[专家问答]阿里技术天团正在解答Docker技术难题
请教问题,如何能让容器使用物理网络IP正常通信;环境swarm 1.2.3Consul v0.5.2docker 1.10.3centos 7.2 Kernel 3.10.0-327.22.2.el7.x86_64Swarmdocker run --rm swarm list token://token192.168.1.203:2375192.168.1.202:2375swarm manager *1 swarm node *2问题描述docker overlay 模式,创建了overlay 网络并指定网络使用与物理机相同的网络段,192.168.1.0/24docker -H tcp://192.168.1.201:3375 network create -d overlay --gateway=192.168.1.1 --subnet=192.168.1.0/24 vlan150 但是为容器分配的网络段任然IP无法通信,因为创建的容器默认会创建两个网卡,默认路由任然为 172.18.0.1docker -H tcp://192.168.1.201:3375 run -tid --net vlan150 --ip 192.168.1.211 nginx
docker -H tcp://192.168.1.201:3375 exec 79dba07e2141 ip route
default via 172.18.0.1 dev eth1
172.18.0.0/16 dev eth1 proto kernel scope link src 172.18.0.2
192.168.1.0/24 dev eth0 proto kernel scope link src 192.168.1.211 无法通信`192.168.1.211PING 192.168.1.211 (192.168.1.211) 56(84) bytes of data.^C--- 192.168.1.211 ping statistics ---8 packets transmitted, 0 received, 100% packet loss, time 6999ms
赞0
踩0