【发布时间】:2014-04-02 09:26:54
【问题描述】:
我正在试验 Dockerfiles,我想我理解了大部分逻辑。但是,在这种情况下,我看不出“公开”和“发布”端口之间的区别。
我首先看到的所有教程都在 Dockerfile 中包含了EXPOSE 命令:
...
EXPOSE 8080
...
然后他们从这个 Dockerfile 构建一个镜像:
$ docker build -t an_image - < Dockerfile
然后在运行镜像时发布与上面相同的端口:
$ docker run -d -p 8080 an_image
或使用
发布所有端口$ docker run -d -P an_image
如果在 Dockerfile 中公开一个端口,它有什么意义呢?是否需要先公开一个端口,然后不再发布它?实际上,我想在创建映像时指定我将在 Dockerfile 中使用的所有端口,然后不再打扰它们,只需使用以下命令运行它们:
$ docker run -d an_image
这可能吗?
【问题讨论】:
标签: docker