不同虚拟机之间的容器通信

使不通虚拟机中的docker通信

让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:国际域名空间、网站空间、营销软件、网站建设、海西网站维护、网站推广。

web1的ip是192.168.8.126
web2的ip是192.168.8.127
MySQL的ip是192.168.8.130

(1)修改docker网桥ip

web1:

ifconfig docker0 172.17.1.1 netmask 255.255.255.0
service docker restart

web2:

ifconfig docker0 172.17.2.1 netmask 255.255.255.0
service docker restart

Mysql:

ifconfig docker0 172.17.3.1 netmask 255.255.255.0
service docker restart

(2)添加路由

#web1

route add -net 172.17.3.0 netmask 255.255.255.0 gw 192.168.8.130
iptables -t nat -F POSTROUTING
iptables -t nat -A POSTROUTING -s 172.17.1.0/24 ! -d 172.17.0.0/16 -j MASQUERAD

#web2:

route add -net 172.17.3.0 netmask 255.255.255.0 gw 192.168.8.130
sudo iptables -t nat -F POSTROUTING
sudo iptables -t nat -A POSTROUTING -s 172.17.2.0/24 ! -d 172.17.0.0/16 -j MASQUERADE

#mysql:

route add -net 172.17.1.0 netmask 255.255.255.0 gw 192.168.8.126
sudo iptables -t nat -F POSTROUTING
sudo iptables -t nat -A POSTROUTING -s 172.17.3.0/24 ! -d 172.17.0.0/16 -j MASQUERADE
route add -net 172.17.2.0 netmask 255.255.255.0 gw 192.168.8.127
sudo iptables -t nat -F POSTROUTING
sudo iptables -t nat -A POSTROUTING -s 172.17.3.0/24 ! -d 172.17.0.0/16 -j MASQUERADE

(3) 测试

在mysql主机上的容器里ping web1 和 web2:
ping 192.168.8.126
不同虚拟机之间的容器通信

ping 192.168.8.127
不同虚拟机之间的容器通信


本文标题:不同虚拟机之间的容器通信
转载来于:http://scyanting.com/article/ihopip.html