将容器端口绑定到Dockerfile内的主机

时间:2017-03-02 09:52:56

标签: docker binding port dockerfile

通常在绑定端口时,我会docker run -p hostport:dockerport ...,但是我可以在Dockerfile中指定端口绑定吗?

我正在启动一个侦听端口的服务器。服务器通过cmd行参数获取端口。如果我不必在两个地方重复端口(在docker run命令和Dockerfile中)

那就太好了

1 个答案:

答案 0 :(得分:7)

dockerfile中,您只能使用exposeEXPOSE指令通知Docker容器在运行时侦听指定的网络端口。 EXPOSE不会使容器的端口可供主机访问。

要将Hostport分配给容器,您需要执行publish-p)。或-P标记发布所有公开的端口。

要自动执行此过程,您可以使用docker-compose。在docker compose文件中,您可以使用不同的参数编排多个docker run命令。