Docker 跨主機通訊

2022-08-21 11:48:10 字數 1416 閱讀 3781

修改主機docker預設的虛擬網段,然後在各自主機上分別把對方的docker網段加入到路由表中,配合iptables即可實現docker容器誇主機通訊。配置方法如下:

設有三颱虛擬機器

更改虛擬機器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容器可以互相訪問了。

原文:

Docker跨主機通訊

已安裝zookeeper。這裡使用前面mesos裡的zookeeper配置 sudo vi etc default docker etc default docker內容 docker add opts h tcp h unix var run docker.sock cluster store z...

docker 跨主機通訊 virtualbox

win7 centos7 docker 1.12 方案1 virtualbox設定雙網絡卡 全部是hosty only 1.設定虛擬網絡卡 enp0s8 192.168.64.0 24 enp0s9 192.168.152.0 24 host1 enp0s9 192.168.152.3 br0 19...

Docker容器跨主機通訊

兩台主機上的docker容器直接通過ip位址進行通訊 各項配置如下 docker version 1.13.1 ip資訊根據個人需求部署 主機1的ip位址為 192.168.1.128 主機2的ip位址為 192.168.1.129 為主機1上的docker容器分配的子網 172.17.1.0 24...