有没有办法使用泊坞窗文件
问题描述:
做主机绑定特定端口的集装箱港口,有没有办法做绑定的主机集装箱港口特定的端口使用泊坞窗文件有没有办法使用泊坞窗文件
我有以下的搬运工文件 步骤项目1:EXPOSE 8090:8080
但是当我运行码头运行时,容器绑定到端口8080而不是8090,如docker文件中所述。
任何想法如何我可以实现这个使用docker文件或有任何更好的方法来实现这一点。
答
看不到泊坞窗按照您的描述执行EXPOSE
功能。
EXPOSE
EXPOSE <port> [<port>...]
的
EXPOSE
指令通知码头工人,容器会听在运行时指定的网络端口。 Docker使用这些信息通过链接互连容器(请参阅Docker User Guide)。
EXPOSE
不等同于vagrant forwarded_port
功能。
当您需要链接容器时它很有用。
如果您需要将端口从容器转发到主机,请使用-p
标志。
实施例:
docker run -it -p 80:80 5959f94a4d10 /bin/bash
答
是有使用搬运工文件
号的Dockerfile
被设计为包括仅便携式配置不结合于宿主特定端口到容器口的方法。绑定到主机端口不是可移植的,因为主机端口可能在每个系统上都不可用。这些配置标志可能在运行时可用,但不包括在Dockerfile语法中(以及所生成的Docker镜像)。
在引擎盖下,主机端口和其他非便携式配置(例如卷装)是容器结构的HostConfig
的一部分。这些仅在容器运行时可用。
谢谢,我认为这是有道理的。端口转发不是容器的功能,而是主机定制方式的人为因素。这可能是DockerFile不具备这种结构的原因 – Kiran 2014-10-17 23:24:15