win10的docker使用hybird-v作为驱动,在添加路由表
route -p add 172.17.0.0 MASK 255.255.0.0 10.0.75.2
后仍无法访问到内部容器,查阅资料的时候发现https://github.com/docker/for-win/issues/221 已有讨论,原因是最新版不行,解决办法如下:
1. 按上诉方法添加路由表
2. 打开docker设置——Daemon
将Basic切换为Advanced,即切换到高级模式,在原有配置中增加”iptables”: false配置项
修改后,点击Apply应用,等待容器重启成功即可(docker如果崩溃就多试几次)
修正:
上诉方法会导致容器无法访问外网,原因是因为关闭iptables后会导致容器的nat网络转发同时失效,正确的办法为执行以下语句,通过挂载母鸡进行iptables更新(win10不能直接访问mobylinuxvm虚拟机):
docker run --rm -ti --privileged --network=none --pid=host docker4w/nsenter-dockerd bin/sh -c "iptables -A FORWARD -j ACCEPT"
转载请注明:Findever » win10 docker通过ip访问容器