windows下docker无法进行端口映射的问题
之前一直是在服务器上玩docker的,最近由于业务需要,需要在windows电脑上安装docker测试一些东西。
我的操作系统是windows10 家庭版,因此无法直接安装docker,所以只能是通过docker toolbox来安装的。
其原理类似于在windows上安装了一个虚拟的linux环境。
安装教程参考了这篇文章:https://www.cnblogs.com/conswin/p/11055853.html
安装好后,我构建好了一个项目的docker镜像。
起初是使用127.0.0.1:8890作为访问地址,但是发现在docker容器内部能访问应用,在容器外部,也就是windows电脑上无法访问127.0.0.1:8890。
一开始以为是端口问题,于是关闭了下防火墙发现还是不可以,于是怀疑是否是ip问题。
后来网上查了下果真是ip的问题,也可以理解。因为我们是相当于windows上开了一台虚拟的linux服务器(也就是我们的docker环境),所以我们在windows访问就需要访问分配给这个虚拟linux服务器的ip地址。这个ip地址可以通过docker-machine ip default查询得到。
所以我们在windows上浏览器输入实际的地址也就是http://192.168.99.100:8890/就能访问到我们运行的docker镜像中的应用了。
哎有机会还是要买一台mac呀,毕竟mac是unix环境,贴近于linux环境。