服务器
本文主要介绍了docker在主机容器之间通信的overlay的实现方法。 内容很清楚,感兴趣的伙伴可以学习一下。 我想大家读了之后会有帮助。
两台相同的服务器:
准备工作:
设置容器的主机名
consul:kv类型的存储数据库( key:value ) )。
在文档01,02中:
vim /etc/docker/daemon.json
{
&; #039; hosts&; #039; [&; #039; tcp://0.0.0.0:2376&; #039;&; #039; unix:///var/run/docker.sock&; #039; ]已更改为在此行中修改自己的docker配置文件
&; #039; 群集存储& amp; #039; &; #039; consul://10.0.0.11:8500&; #039;
&; #039; 群集高级& amp; #039; &; #039; 10.0.0.11:2376&; #039; 另一台写自己的ip就可以了
}
vim /etc/docker/daemon.json
vim/usr/lib/systemd/system/docker.service
execstart=/usr/bin/dockerd---containerd=/run/containerd/containerd.sock中的行将这样更改,这两行都将更改
系统日期-读取
系统重新开始文档器
在文档01中:
在设置容器的主机名后,使用docker run-d-p 8500:8500-h consul-- nameconsulprogrium/consul-server-bootstrap命令
[ root @ docker1centos _ zabbix ] # docker images
repositorytagimageidcreatedsize
10.0.0.11:5000/kodev 26914 FD a5 FD 44 hours ago 502 MB
kodev 26914 FD a5 FD 444 hours ago 502 MB
10.0.0.11:5000/centos 6.9 _ nginx _ sshv 392 b 1087 df 3f 513 hours ago 431 MB
centos 6.9 _ nginx _ sshv 392 b 1087 df 3f 513 hours ago 431 MB
centos 6.9 _ nginx _ sshv 26307 e23 ee 16 d 13 hours ago 431 MB
nonenoneb 94 c 822488 f 913 hours ago 431 MB
centos 6.9 _ nginx _ ssh v1 f 01 eee BF 918 a13 hours ago 431 MB
none none 54167 f1 d 659 b 13 hours ago 431 MB
none none 71474 e 61650413 hours ago 430 MB
centos 6.9 _ sshv 203387 f 99 f 02214 hours ago 307 MB
none none 82 d0e 9ce 844 b14 hours ago 195 MB
kodev 1c 0f 486 AC 58 Fe 15 hours ago 536 MB
Prog rium/consul latest 09 ea 64205 e 554 years ago 69.4 MB在这里
[ root @ docker1centos _ zabbix ] # docker PS-a
containeridimagecommandcreatedstatusportsnames
016753EE64dProgrium/consul&; #039; /bin/start-server…&; #039; 4minutesagoexited(255 )3 minutes ago 53/tcp、53/udp、8300-8300
最后一页访问:
2 )创建覆盖网络
dockernetworkcreate-d overlaysubnet 172.16.1.0/24gateway 172.16.1.254 ol 1网段与主机上的网段不同,只能随意使用
查看容器的网络,查看是否有出现overlay
[ root @ docker1shell ] # dockernetworkls
网络id name driver scope
e480a4fe5f4b bridge bridge local
0a3cbfe2473f host host local
4e5ccdc 657 E1 MAC VLAN _1macvlanlocal
aab77f02a0b1 none null local
8ae111afded7 ol1 overlay global
3 )开始集装箱测试
一个阶段:
docker run-it---network ol1---name te st01 centos 6.9 _ ssh:v2/bin/bash
另一个阶段:
docker run-it---network ol1---name test 02 centos 6.9 _ ssh:v2/bin/bash
然后,可在test01和test02之间进行连通
然后,可在test01和test02之间进行连通
真实原理:
每个容器有两张网卡,eth0实现容器之间的通信,eth2实现容器接入外联网
阅读以上内容,您应该更了解Docker如何实现跨主机容器通信的overlay。 另外,如果你想学习更多的东西,欢迎来到信息频道。
详情请访问云服务器、域名注册、虚拟主机的问题,请访问西部数码代理商官方网站: www.chenqinet.cn