Docker端口的不确定性

时间:2015-01-14 20:38:06

标签: docker

我正在尝试使用“EXPOSE”在我定义的端口上访问正在运行的应用程序 这是我得到的:

docker@boot2docker:~$ docker ps
CONTAINER ID        IMAGE                COMMAND                CREATED             STATUS              PORTS
    NAMES
653d8ee23260        nginx:latest         "nginx -g 'daemon of   2 minutes ago       Up 2 minutes        80/tcp, 443/tcp
    insane_thompson
007cfcd0f539        highlighter:latest   "java -jar -Xmx1500m   8 minutes ago       Up 8 minutes        7777/tcp
    elated_kirch
docker@boot2docker:~$ docker ps
CONTAINER ID        IMAGE                COMMAND                CREATED             STATUS              PORTS     NAMES
653d8ee23260        nginx:latest         "nginx -g 'daemon of   2 minutes ago       Up 2 minutes        80/tcp, 443/tcp    insane_thompson
007cfcd0f539        highlighter:latest   "java -jar -Xmx1500m   8 minutes ago       Up 8 minutes        7777/tcp    elated_kirch

docker@boot2docker:~$ docker port 007cfcd0f539
docker@boot2docker:~$ docker port 653d8ee23260

docker@boot2docker:~$ docker port 653d8ee23260 80
FATA[0000] Error: No public port '80/tcp' published for 653d8ee23260

docker@boot2docker:~$ docker port 007cfcd0f539 7777
FATA[0000] Error: No public port '7777/tcp' published for 007cfcd0f539

我是否误解了“端口”命令的工作原理?

1 个答案:

答案 0 :(得分:5)

{+ 1}在Dockerfile中是不够的。

您需要明确告诉docker使用EXPOSE flagsdocker run上公开端口。

可以找到更详细的答案here