四、容器的网络访问

系列导航

一、docker入门(概念)

二、docker的安装和镜像管理

三、docker容器的常用命令

四、容器的网络访问

五、容器端口转发

六、docker数据卷

七、手动制作docker镜像

八、docker-file自动构建docker镜像

九、dockerfile指令讲解

十、docker镜像的分层

十一、docker的容器互联

十二、docker仓库

十三、docker的四种网络类型

十四、跨宿主机容器之间的通信

十五、跨主机通信overlay网络

十六、企业级私有仓库harbor

十七、其他

1、网络原理图

 

 

2、查看容器的ip地址(容器里没有ficonfig命名的时候)

(1)查看容器属性

[root@node03 ~]# docker ps -l

CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS                   PORTS               NAMES

a7837d2a610f        ubuntu:15.10        "ps -ef"            3 hours ago         Exited (0) 3 hours ago                       agitated_rhodes

[root@node03 ~]# docker inspect a7837d2a610f

 

 

2)进入容器后使用命名

[root@node03 ~]# docker exec -it cde36937797f  /bin/bash

root@cde36937797f:/# hostname -I

172.17.0.2

3、设置内核转发参数

注:设置为0,容器就不能上网了

 

注:上图是临时修改重启后参数会还原

 

如下是永久修改方式

 

 

 

修改后立即生效

 

 

进入容器后测试是否可以上网

[root@8e06f2090784 /]# curl -I www.baidu.com

HTTP/1.1 200 OK

Accept-Ranges: bytes

Cache-Control: private, no-cache, no-store, proxy-revalidate, no-transform

Connection: keep-alive

Content-Length: 277

Content-Type: text/html

Date: Fri, 13 Mar 2020 08:21:35 GMT

Etag: "575e1f60-115"

Last-Modified: Mon, 13 Jun 2016 02:50:08 GMT

Pragma: no-cache

Server: bfe/1.0.8.18

 

4、查看iptables规则

如下红色部分是讲容器的ip伪装成外网地址

[root@node03 ~]# iptables -t nat -L -n

 

 

4、端口转发参数 -p

$ docker run --name nginx-test -p 8081:80 -d nginx

参数说明:

  • --name nginx-test:容器名称。
  • -p 8081:80: 端口进行映射,将本地 8081 端口映射到容器内部的 80 端口。
  • -d nginx: 设置容器在在后台一直运行。

 

posted @   万笑佛  阅读(122)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示