Docker主机通信具体方法

树叶云

由于docker技术的火爆,导致现在越来越多的企业都在使用docker这种虚拟化技术。企业中使用docker这种虚拟化技术,其目的就是为了让docker中的容器对外提供服务。因此,我们必须深入了解一下docker的网络知识,以满足更高的网络需求。

设有三台虚拟机

   v1: 10.108.8.200

   v2: 10.108.8.205

   v3: 10.108.8.202

更改虚拟机docker0网段

v1为172.17.1.1/24,v2为172.17.2.1/24,v3为172.17.3.1/24。

   #v1
   sudo ifconfig docker0 172.17.1.1 netmask 255.255.255.0
   sudo bash -c 'echo DOCKER_OPTS="-B=docker0" >> /etc/default/docker'
   sudo service docker restart

   # v2
   sudo ifconfig docker0 172.17.2.1 netmask 255.255.255.0
   sudo bash -c 'echo DOCKER_OPTS="-B=docker0" >> /etc/default/docker'
   sudo service docker restart

   # v3
   sudo ifconfig docker0 172.17.3.1 netmask 255.255.255.0
   sudo bash -c 'echo DOCKER_OPTS="-B=docker0" >> /etc/default/docker'
   sudo service docker restart

然后在v1上把v2的docker虚拟网段加入到路由表中,在v2上将v1的docker虚拟网段加入到自己的路由表中

   # v1 10.108.8.200
   sudo route add -net 172.17.2.0 netmask 255.255.255.0 gw 10.108.8.205
   sudo iptables -t nat -F POSTROUTING
   > sudo iptables -t nat -A POSTROUTING -s 172.17.1.0/24 ! -d 172.17.0.0/16 -j MASQUERADE

   # v2 10.108.8.205   v3   10.108.8.202
   sudo route add -net 172.17.1.0  netmask 255.255.255.0  gw 10.108.8.200
   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

至此,两台虚拟机中的docker容器可以互相访问了。

文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/219629.html<

(0)
运维的头像运维
上一篇2025-04-14 05:02
下一篇 2025-04-14 05:04

相关推荐

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注