5
我Dockerfile包含此:为什么Docker在使用-P但是使用-p 80:80时不能正确显示我的端口?
EXPOSE 80
然而,如果我-P
运行像我无法连接到它。与-p 80:80
运行正常。
[email protected]:~$ sudo docker run -d -P dart-test
b3277a5483531f6dc23a1c807cf895103fd5333b603c1b4a352e07c9721f1a48
# Can't connect here
[email protected]:~$ curl http://localhost/
curl: (7) Failed to connect to localhost port 80: Connection refused
[email protected]:~$ sudo docker stop b3277
b3277
[email protected]:~$ sudo docker run -d -p 80:80 dart-test
dfe68699bfb33ce33e8e6e1953ac828b9d31209988df64e2627d9228758438ba
# Connects fine here
[email protected]:~$ curl http://localhost/
Hello, world!
[email protected]:~$
是这个地方记录?我读[这里的文档](http://docs.docker.com/reference/run/),但看不到任何使用随机端口;它看起来像只会打开EXPOSE'd的相同端口? – 2014-09-19 10:03:25
这个文档不是很清楚,但是这个信息在一些地方可用。请参阅http://docs.docker.com/userguide/dockerlinks/#network-port-mapping-refresher – dcro 2014-09-19 10:05:18
正确; ta :)似乎我链接的文档应该更新以提及此处;很混乱! – 2014-09-19 10:12:58