2016-11-17 264 views
2

我试图将运行我的服务器的Docker容器的端口暴露给我的Mac主机,以便主机上的浏览器可以访问它。Docker容器遇到了将端口暴露给Mac上的主机的问题

我可以使用run -it -p <port>:<port> ...命令来公开一个端口。这当然适用于Linux主机(我一直在这样做,没有问题)。但从未在我的Mac上工作。通过“从来没有工作过”,我的意思是没有任何端口从容器一侧是暴露的尽管docker ps命令确实显示像这样的映射0.0.0.0:32769->8080/tcp。但什么都不可能连接。

所以我想知道是否有任何额外的配置,我必须做到这一点。我使用的是macOS Sierra 10.12和Docker版本1.11.1,版本5604cbe。

任何输入将不胜感激!谢谢!

+0

您是在本地测试还是从网络上的其他机器测试?如果您尝试从其他主机连接,则可能是防火墙问题。 –

+0

您是使用Mac的“本机”Docker还是Docker机器? – nwinkler

回答

1

如果您使用的是Docker Toolbox,则需要确保获得正确的Docker机器IP地址。

docker run -d -p 8080:80 --name webserver nginx

找到合适的IP与docker-machine ip。您可能会得到192.168.99.100

然后,您可以通过打开网页浏览器在http://192.168.99.100:8080/与代理检查它。

如果您使用的是Docker for Mac,请阅读此docs

+0

非常感谢!这样可行! – Lincong

+0

@Lincong,不客气! – Tuan

相关问题