当前位置:首页 > docker > docker操作 > 正文内容

docker网络

docker网络模式介绍


名称
说明
适用
名称
说明
适用
container

没有单独的ip,端口

与其他容器共享同一个网络:ip,端口等


bridge

桥接模式,容器创建时默认网络模式

容器启动时,会创建一个docker0的虚拟网桥

由虚拟网桥对网络访问进行转发,容器通过虚拟网桥与外界通信


none

无网络模式,容器不设置网络,不能与其他容器及外界进行通信

应用保密性较强,存储机密数据,不需要与外界通信的容器

纯数据卷容器可以设置为none

overlay

可以实现不同宿主机上的容器进行连接,即跨宿主机进行通信

同一中间件,应用的容器部署在不同主机上做集群,进行通信
host

主机模式

和宿主机共享网络:ip,端口等,其他的都是隔离的

其他主机可以直接访问容器的端口



bridge模式

image.png


host模式

image.png

contailer模式

image.png

none模式

image.png


设置docker网络

host网络

直接指定 "--network=host" 即可

]# docker run -itd --name tomcat1 --network=host tomcat:8.5.89

容器tomcat1,与宿主机使用同一网络,即ip和端口都是宿主机的,容器没有自己的ip和端口

image.png


bridge网络

创建容器时指定网络模式

]# docker run -itd --name tomcatest1 --network=bridge --restart=always tomcat:8.5.89

指定参数:--network=bridge

容器tomcattest1设置的网络模式为bridge,由于docker网络默认为bridge,所以创建时可以不写


创建子网网络

命令:docker network create

设置一个子网,网段为192.168.0.0,为容器分配的ip地址范围是192.168.2.0-192.168.2.255,网关为192.168.2.1,桥接模式,子网名称为web1:

]# docker network create --driver=bridge --subnet=192.168.0.0/16 --ip-range=192.168.2.0/24 web1


创建容器,加入网络

创建容器时不指定ip

创建容器zabweb,设置网络为web1,不指定ip,生成随机ip:

]# docker run -itd --name zabweb --volume zabweb:/app -p8800:8800 --network=web1 centos:7

创建容器时指定ip

创建容器zabserver,设置网络为web1,指定ip为192.168.2.4:

]# docker run -itd --name zabserver --network=web1 --ip 192.168.2.4 centos:7

overlay网络

添加overlay网络过程

设置swarm集群 ==> 创建overlay网络 ==> 创建容器加入到overlay网络中

 一台宿主机上            指定可附加模式

                                  允许其他容器挂载


设置swarm集群

在一台宿主机上执行

]# docker swarm init

记住token:SWMTKN-1-18ec0dmy3nc66izfrib685g36f1mi7hrlvldye8gm13ulwq5g4-7u9tfyimhy946gvb4viq70b1k

使用2377端口进行通信

image.png


加入swarm集群

另外的宿主机上执行

]# docker swarm join --token 'SWMTKN-1-18ec0dmy3nc66izfrib685g36f1mi7hrlvldye8gm13ulwq5g4-7u9tfyimhy946gvb4viq70b1k' 172.25.230.52:2377

e8gm13ulwq5g4-7u9tfyimhy946gvb4viq70b1k:生成的token172.25.230.52:2377:连接生成token的宿主机ip及端口2377

image.png

创建overlay网络

]# docker network create --driver=overlay --subnet=192.168.0.0/16 --ip-range=192.168.2.0/24 net1


创建容器

在两台宿主机上分别创建容器web1和web2

##host1:
]# docker run -itd --name web1 --network=net1 nginx:1.24.0

##host2:
]# docker run -itd --name web2 --network=net1 nginx:1.24.0

image.png

image.png


docker网络命令参数

参数

解释

示例

适用命令

--subnet指定创建的子网网段--subnet 192.168.0.0/16



docker network create


--ip-range指定为容器分配的ip地址范围,一般在随机指定ip时分配

--ip-range 192.168.2.0/24

--gateway指定创建的子网的网关--gateway 192.168.2.1
-d  --driver指定网络连接模式,默认桥接bridge

-d bridge

--driver overlay 

--attachable指定可附加模式,允许手动将容器添加到该网络上
--network

指定容器网络

--network host

--network overlay

--ip

指定容器ip

--ip 192.168.2.10

docker run


扫描二维码推送至手机访问。

版权声明:本文由个人博客发布,如需转载请注明出处。

本文链接:https://opszzfwordpress.club/post/207.html

分享给朋友:
返回列表

上一篇:docker数据卷

没有最新的文章了...

“docker网络” 的相关文章

docker镜像基本操作

docker镜像基本操作

拉取镜像]# docker pull nginx  ...

docker容器基本操作

docker容器基本操作

关于docker容器的相关命令,可以参考:docker命令说明创建容器每运行一个镜像,就会创建一个容...

docker命令

docker命令

docker run名称说明示例-i 以交互模式运行容器,通常与 -t 同时使用...

docker数据卷

docker数据卷

docker数据卷介绍Docker可以将开发的应用和运行的环境一起打包形成容器运行,Docker容器...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。