•docker network create
•docker network connect
•docker network ls
•docker network rm
•docker network disconnect
•docker network inspect

创建网络
zane@zane-V:~$ docker network create simple-network
zane@zane-V:~$ docker network inspect simple-network
{
"Name": "simple-network",
"Id": "8bf58f43c56622d1100f7da9ef6506e45a4aa68556b586311f3756130c311d75",
"Scope": "local",
"Driver": "bridge",
"EnableIPv6": false,
"IPAM": {
"Driver": "default",
"Options": {},
"Config": [
{
"Subnet": "172.20.0.0/16",
"Gateway": "172.20.0.1/16"
}
]
},
"Internal": false,
"Containers": {},
"Options": {},
"Labels": {}
}
•进入一个键值存储。引擎支持Consul,Etcd,ZooKeeper.
•在群集中的每个主机上正确配置的deamon引擎
支持overlay网络的docker选项:
•--cluster-store-opt
使用--subnet选项直接指定子网络,在bridge网络中只可以指定一个子网络,而在overlay网络中支持多个子网络。
除了--subnet,还可以指定:--gateway,--ip-range,--aux-address选项。
$ docker network create -d overlay \ --subnet=192.168.0.0/16 \ --subnet=192.170.0.0/16 \ --gateway=192.168.0.100 \ --gateway=192.170.0.100 \ --ip-range=192.168.1.0/24 \ --aux-address="my-switch=192.168.1.6" \ --aux-address="my-nas=192.170.1.6" \
如何要创建自己定制的网络,docker也是支持很多选项的。
可以指定网络的端口号:
$ docker run -d -P --name redis --network my-network redis $ docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES bafb0c808c53 redis "/entrypoint.sh redis" 4 seconds ago Up 3 seconds 172.23.0.1:32770->6379/tcp redis
连接容器
可以连接已存在的容器到一个或者多个网络中。一个容器可以连接到多个不同网络驱动的网络中。
当连接一旦建立,容器便可以可其他的容器通讯,通过IP 或者 容器名称。
基本容器网络实例:
1.创建两个容器,container1 和 container2
$ docker run -itd --name=container1 busybox $ docker run -itd --name=container2 busybox zane@zane-V:~$ docker network create -d bridge --subnet 172.25.0.0/16 isolated_nw
3.连接container2到这个网络,然后验证一下:
zane@zane-V:~$ docker network connect isolated_nw container2
zane@zane-V:~$ docker network inspect isolated_nw
{
"Name": "isolated_nw",
"Id": "a8208641505d2d8fc37bf7cbd1027c01f0def461815786e076ef4ae65b7b2f9b",
"Scope": "local",
"Driver": "bridge",
"EnableIPv6": false,
"IPAM": {
"Driver": "default",
"Options": {},
"Config": [
{
"Subnet": "172.25.0.0/16"
}
]
},
"Internal": false,
"Containers": {
"e9bce535ae32945f5e43340facdb6c16c93d92119e85b61c6cb7a5379a0caf63": {
"Name": "container2",
"EndpointID": "ef7244d32484407c3ec4aa30b7bdb0a6cbe3dbbfedc03e5c856ad20a08af172f",
"MacAddress": "02:42:ac:19:00:02",
"IPv4Address": "172.25.0.2/16",
"IPv6Address": ""
}
},
"Options": {},
"Labels": {}
}
注意container2,自动分配到了IP地址。此时container1,仍然连接在默认的bridge网络。
4.启动第三个container,但是这是使用--ip 选项指定它的IP地址,
zane@zane-V:~$ docker run --network=isolated_nw --ip=172.25.3.3 -itd --name=container3 busybox
5.检查container3使用的是哪个网络:
"Networks": {
"isolated_nw": {
"IPAMConfig": {
"IPv4Address": "172.25.3.3"
},
"Links": null,
"Aliases": [
"adf68dd9e09c"
],
"NetworkID": "a8208641505d2d8fc37bf7cbd1027c01f0def461815786e076ef4ae65b7b2f9b",
"EndpointID": "71d5d272d056b6111a83f0843a10d1944f1648f34d5099258d5865d053a939b0",
"Gateway": "172.25.0.1",
"IPAddress": "172.25.3.3",
"IPPrefixLen": 16,
"IPv6Gateway": "",
"GlobalIPv6Address": "",
"GlobalIPv6PrefixLen": 0,
"MacAddress": "02:42:ac:19:03:03"
}
}
}
6.检查container2使用的是哪个网络:
"Networks": {
"isolated_nw": {
"Aliases": [
"e9bce535ae32"
],
"EndpointID": "ef7244d32484407c3ec4aa30b7bdb0a6cbe3dbbfedc03e5c856ad20a08af172f",
"Gateway": "172.25.0.1",
"GlobalIPv6Address": "",
"GlobalIPv6PrefixLen": 0,
"IPAMConfig": {},
"IPAddress": "172.25.0.2",
"IPPrefixLen": 16,
"IPv6Gateway": "",
"Links": null,
"MacAddress": "02:42:ac:19:00:02",
"NetworkID": "a8208641505d2d8fc37bf7cbd1027c01f0def461815786e076ef4ae65b7b2f9b"
}
},
注意:container2 在两个网络中间,它加入了默认bridge网络,当你在创建它的时候,然后又连接它到了isolation_nw.
一个容器可以连接到多个网络中
7.使用docker attach 命令连接一个正在运行的容器,然后查看
zane@zane-V:~$ docker attach container2 / # ifconfig -a eth1 Link encap:Ethernet HWaddr 02:42:AC:19:00:02 inet addr:172.25.0.2 Bcast:0.0.0.0 Mask:255.255.0.0 inet6 addr: fe80::42:acff:fe19:2/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:86 errors:0 dropped:0 overruns:0 frame:0 TX packets:8 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:11780 (11.5 KiB) TX bytes:648 (648.0 B) eth2 Link encap:Ethernet HWaddr 02:42:AC:11:00:03 inet addr:172.17.0.3 Bcast:0.0.0.0 Mask:255.255.0.0 inet6 addr: fe80::42:acff:fe11:3/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:23 errors:0 dropped:0 overruns:0 frame:0 TX packets:8 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:3809 (3.7 KiB) TX bytes:648 (648.0 B) lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:65536 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
8.可以通过容器名称来相互连接
/ # ping -w 4 container3 PING container3 (172.25.3.3): 56 data bytes 64 bytes from 172.25.3.3: seq=0 ttl=64 time=0.077 ms 64 bytes from 172.25.3.3: seq=1 ttl=64 time=0.049 ms 64 bytes from 172.25.3.3: seq=2 ttl=64 time=0.047 ms 64 bytes from 172.25.3.3: seq=3 ttl=64 time=0.054 ms
虽然container1 和 container2 都在bridge网络中,但是他们是不支持 容器名称通信的。
zane@zane-V:~$ docker attach container2 / # ping container3 PING container3 (172.25.3.3): 56 data bytes 64 bytes from 172.25.3.3: seq=0 ttl=64 time=0.042 ms 64 bytes from 172.25.3.3: seq=1 ttl=64 time=0.050 ms 64 bytes from 172.25.3.3: seq=2 ttl=64 time=0.063 ms --- container3 ping statistics --- 3 packets transmitted, 3 packets received, 0% packet loss round-trip min/avg/max = 0.042/0.051/0.063 ms / # ping -w 4 container1 ping: bad address 'container1' / # ping -w 4 172.17.0.2 PING 172.17.0.2 (172.17.0.2): 56 data bytes 64 bytes from 172.17.0.2: seq=0 ttl=64 time=0.104 ms 64 bytes from 172.17.0.2: seq=1 ttl=64 time=0.052 ms 64 bytes from 172.17.0.2: seq=2 ttl=64 time=0.127 ms 64 bytes from 172.17.0.2: seq=3 ttl=64 time=0.057 ms --- 172.17.0.2 ping statistics --- 4 packets transmitted, 4 packets received, 0% packet loss round-trip min/avg/max = 0.052/0.085/0.127 ms
注意退出attach 时,使用ctr-p + ctr-q.
如果使用ctr-d 则会stop container.
zane@zane-V:~$ docker attach container3 / # ping -w 4 172.17.0.2 PING 172.17.0.2 (172.17.0.2): 56 data bytes --- 172.17.0.2 ping statistics --- 4 packets transmitted, 0 packets received, 100% packet loss
上面的实验我们知道,用户自定义的网络,是可以相互解析容器名的,也就是可以用容器名来相互同行。
•定义网络别名 •--link=CONTAINER-NAME:ALIAS
1.断开container2和isolated_nw的连接,然后
zane@zane-V:~$ docker network disconnect isolated_nw container2 zane@zane-V:~$ docker network rm simple-network
•创建网络 •docker network create simple-network
•overlay网络条件 •进入一个键值存储
•支持overlay网络的docker选项 •--cluser-store
•指定子网络,网关,地址范围
•将容器添加到网络中 •docker network connect isolated_nw container2
•连接一个正在运行的容器 •docker attach
•attach 的退出 •ctr p + ctr q
•默认bridge网络不支持,容器名称通信,其他网络支持; •使用link 来支持默认网络的容器名称通信
•断开连接
•docker network disconnect isolated_nw container2
•删除网络
•docker network rm simple-network
•检测网络
•docker network inspect isolated_nw
# Docker
# 网络命令
# 网络命令详解
# docker命令
# Docker 清理命令集锦
# 详解Dockerfile 中的 COPY 与 ADD 命令
# Docker run 命令的使用方法详解
# Docker常用的清除容器镜像命令小结
# Docker 修改文件是否需要重启(命令详解)
# docker常用命令操作方法
# Docker的理解和基本命令详解
# 常用的Docker基本命令及用法汇总
# docker常用命令整理汇总(新手必备!)
# 多个
# 的是
# 不支持
# 连接到
# 键值
# 正在运行
# 这是
# 还可以
# 都在
# 你在
# 可以用
# 其他的
# 而在
# 可以通过
# 便可
# 自定义
# 第三个
# 则会
# 端口号
# 然后又
相关文章:
宝塔新建站点为何无法访问?如何排查?
广州顶尖建站服务:企业官网建设与SEO优化一体化方案
如何在阿里云ECS服务器部署织梦CMS网站?
高端建站如何打造兼具美学与转化的品牌官网?
如何在万网ECS上快速搭建专属网站?
制作门户网站的参考文献在哪,小说网站怎么建立?
西安专业网站制作公司有哪些,陕西省建行官方网站?
广州营销型建站服务商推荐:技术优势与SEO优化解析
建站之星伪静态规则如何设置?
建站主机功能解析:服务器选择与快速搭建指南
如何处理“XML格式不正确”错误 常见XML well-formed问题解决方法
建站之星安装后如何自定义网站颜色与字体?
建站之星如何助力企业快速打造五合一网站?
制作网站的网址是什么,请问后缀为.com和.com.cn还有.cn的这三种网站是分别是什么类型的网站?
百度网页制作网站有哪些,谁能告诉我百度网站是怎么联系?
建站之星24小时客服电话如何获取?
制作网站的软件下载免费,今日头条开宝箱老是需要下载怎么回事?
常州自助建站:操作简便模板丰富,企业个人快速搭建网站
如何通过虚拟机搭建网站?详细步骤解析
郑州企业网站制作公司,郑州招聘网站有哪些?
活动邀请函制作网站有哪些,活动邀请函文案?
导航网站建站方案与优化指南:一站式高效搭建技巧解析
网站制作网站,深圳做网站哪家比较好?
音响网站制作视频教程,隆霸音响官方网站?
广东企业建站网站优化与SEO营销核心策略指南
已有域名和空间如何快速搭建网站?
网站设计制作公司地址,网站建设比较好的公司都有哪些?
相亲简历制作网站推荐大全,新相亲大会主持人小萍萍资料?
手机怎么制作网站教程步骤,手机怎么做自己的网页链接?
北京网站制作费用多少,建立一个公司网站的费用.有哪些部分,分别要多少钱?
网站制作的方法有哪些,如何将自己制作的网站发布到网上?
威客平台建站流程解析:高效搭建教程与设计优化方案
官网自助建站系统:SEO优化+多语言支持,快速搭建专业网站
网站好制作吗知乎,网站开发好学吗?有什么技巧?
h5网站制作工具有哪些,h5页面制作工具有哪些?
建站主机服务器选型指南与性能优化方案解析
建站VPS能否同时实现高效与安全翻墙?
如何选择适配移动端的WAP自助建站平台?
定制建站如何定义?其核心优势是什么?
如何基于云服务器快速搭建网站及云盘系统?
湖州网站制作公司有哪些,浙江中蓝新能源公司官网?
微信小程序 input输入框控件详解及实例(多种示例)
电商网站制作公司有哪些,1688网是什么意思?
模具网站制作流程,如何找模具客户?
如何通过远程VPS快速搭建个人网站?
如何快速搭建安全的FTP站点?
建站之星北京办公室:智能建站系统与小程序生成方案解析
建站之星如何开启自定义404页面避免用户流失?
Bpmn 2.0的XML文件怎么画流程图
视频网站app制作软件,有什么好的视频聊天网站或者软件?
*请认真填写需求信息,我们会在24小时内与您取得联系。