非 Win10 企业版 Docker 运行 nginx 端口映射不成功问题解决

问题描述

在 Docker 中启动Nginx服务并将端口映射到主机8089端口,nginx

$ docker run -d -p 8090:80 nginx复制代码

此时在主机浏览器访问localhost:8090是没法正常显示的
docker

5d1f1fa451ed42d0be768b1576b4129d-10.png
5d1f1fa451ed42d0be768b1576b4129d-10.png

问题缘由

因为在非win10企业版中使用的Docker都是先由VirtualBox虚拟一个Linux环境而后Docker运行在这个虚拟环境里,因此localhost是对于docker镜像对虚拟的Linux环境来讲的,端口映射在了虚拟的Linux中。浏览器

问题解决

使用 docker-machine ip default查看虚拟Linux提供给主机的IP地址,其实在Docker启动时就有IP提示bash

docker is configured to use the default machine with IP 192.168.99.100
For help getting started, check out the docs at docs.docker.comspa

此时咱们在浏览器中把localhost换成刚才的IP地址就能正常访问Nginx默认页了。
3d

cd6d322673d446db85bf1820a6bf8f7d-11.png
cd6d322673d446db85bf1820a6bf8f7d-11.png

建议

Docker是在Ubuntu下诞生的,因此尽量使用Ubuntu系统,搞这些东西Windows真的不适合。code

相关文章
相关标签/搜索