boot2docker / bootsync.sh会忽略我的默认网关吗?

时间:2019-06-21 08:57:31

标签: docker windows-10 docker-machine hyper-v boot2docker

我正在尝试为docker计算机配置静态IP地址。

感谢VonC answer,我设法上手了。

但是,我遇到了一个问题:无论如何,boot2docker似乎都忽略了“路由添加默认gw 192.168.0.1”。

要复制:

1。创建一个新的docker机器:OK

docker-machine create -d hyperv --hyperv-virtual-switch "Primary Virtual Switch" Swarm-Worker1

2。应用您的批次:确定

dmvbf Swarm-Worker1 0 108

3。 SSH进入计算机,并检查bootsync.sh是否正常:确定

cat /var/lib/boot2docker/bootsync.sh

output:
kill $(more /var/run/udhcpc.eth0.pid)
ifconfig eth0 192.168.0.108 netmask 255.255.255.0 broadcast 192.168.0.255 up
route add default gw 192.168.0.1

4。退出SSH,重新启动计算机,然后重新生成证书:确定

docker-machine restart Swarm-Worker1
docker-machine regenerate-certs Swarm-Worker1

5。检查IP是否与所需的IP相匹配:确定

docker-machine env Swarm-Worker1

6:SSH进入计算机并检查其路由:KO

route -n

output:
127.0.0.1       0.0.0.0         255.255.255.255 UH    0      0        0 lo
172.17.0.0      0.0.0.0         255.255.0.0     U     0      0        0 docker0
192.168.0.0     0.0.0.0         255.255.255.0   U     0      0        0 eth0

7:尝试手动设置网关并检查其是否正常:确定

route add default gw 192.168.0.1

OR

ip route add default via 192.168.0.1

任何人都知道发生了什么事吗?为什么boot2docker只忽略路由指令?我该怎么解决?

P.S:我的docker-machines在Docker-Engine-Community 18.09.6上运行

0 个答案:

没有答案