这里采用最原始的桥接模式来实现跨主机直接docker容器通信问题

一些常用命令

    brctl show br0
    brctl addbr br0
    brctl addif br0 eth0
    ifconfig br0 down

 1.先安装brctl工具包

apt-get install bridge-utils

2.创建一个docker的桥接网络类型(ip填写和同主机网段的ip)

docker network create --subnet=192.168.17.100/16 br0

这里我的宿主机ip为192.168.17.9 网关为192.168.17.254 docker的ip需要同网段即为 192.168.17.*

3.利用网桥工具将docker的网桥挂载到宿主机网卡上

brctl addif br0 eth0
brctl addif br0(docker网桥) eth0(宿主机网卡)

4.设置docker网卡ip

ifconfig br0 192.168.17.100 up

5.启动容器 需提前指定好ip

sudo docker run -it  -h test --privileged=True --net=staticnet --ip 192.168.17.101 --name="docker1" -p 1111:80 -p 1112:8080 ambari:v1.0 /bin/bash

6.对另外一台机器执行上述操作,注意ip别冲突

7.在docker里ping跨主机的另一个docker,如果ping的通

问题解决!!

12-17 00:13