windows10连接ubuntu虚拟机上的docker
连接ubuntu虚拟机上的Docker
第一步 首先设置虚拟机和本地机网络连接方式为桥接连接
本来想着只要本地机能够ping通虚拟机,就可以不用在乎网络连接方式
当时试过很多次,只有NAT模式才能设置路由转发,
具体原理不太清楚,希望有会的大佬指导
第二步 本地机ping虚拟机
查看虚拟机ip
ifconfig
然后用本地机进行Ping
ping ip
如图所示则ping成功
第三步 虚拟机ping docker 容器
在虚拟机中查看dockers容器的Id
docker ps
container id 即为运行中的Dockers 容器id
然后查看容器的地址
docker inspect (container id)
上图为虚拟机分配给docker容器的地址
正常来讲使用虚拟机去ping该地址可以ping通
但是使用本地机ping不通
第四步 在本地机设置路由转发
因为在本地机ping不通虚拟机上的docker容器
如图所示
如果此时在Windows宿主机中pingDocker容器是ping不同的,因为在宿主机上没有通往172.17.0.0/24网络的路由,宿主机会将发往172.17.0.0/24网络的数据发往默认路由,这样就无法到达容器。
因此设置路由转发
一定要设置成NAT,原因俺也不知,反正其他方式俺不成功
在本地机使用管理员模式打开cmd
添加路由转发
route add -p dockers地址 mask 255.255.0.0 虚拟机地址
查看路由
route print
删除路由
route delete 地址
在本地机尝试ping docker容器
成功!!
如果设置不成功,可能是虚拟机防火墙的问题,请自行查看