到目前为止,我有:
我遇到的问题是当我使用此命令启动容器时
docker run -it --name demotest --rm -p 127.0.0.1:15000:1500 -v /c/Users/b101/shared:/mnt/shared ubuntu/demotest_core bin/bash
容器启动,之后我cd
到我的应用程序的目录并启动应用程序(它是一个在端口1500上运行的Web应用程序),应用程序在容器上成功启动,我可以看到它我在netstat
时的聆听模式。我想在我的主机WIN7系统上访问此应用程序,但是当我尝试http://127.0.0.1:15000
时,我收到连接拒绝错误。
使用另一个终端我可以清楚地看到端口映射已到位,但我无法在主机上访问它
C:\Users\b101>docker port demotest
1500/tcp -> 127.0.0.1:15000
我也尝试过这个命令,认为首先我需要公开PORT然后对它进行MAP但它没有工作
docker run -it --name demotest --expose 1500 --rm -p 127.0.0.1:15000:1500 -v /c/Users/b101/shared:/mnt/shared ubuntu/demotest_core bin/bash
答案 0 :(得分:1)
如果您正在使用docker-machine,那么该端口将在VM中公开,而不是您本地的Win7计算机。
将-p 127.0.0.1:15000:1500
更改为15000:1500
,然后尝试在15000
处提供的IP地址访问端口docker-machine ip default
。
您不能在端口映射中使用127.0.0.1,因为它只会绑定到无法从VM外部访问的本地接口。