dockerfile 端口
原创
Dockerfile 中的端口设置简介
在 Docker 中,我们可以通过 Dockerfile 来构建自定义的镜像。在某些场景下,我们需要将容器的端口映射到宿主机上,以便外部可以访问容器中的应用服务。这时,我们就需要在 Dockerfile 中指定端口。
怎样在 Dockerfile 中设置端口
Dockerfile 中使用 EXPOSE
指令来指定运行容器所需的端口。以下是一个明了的示例:
FROM ubuntu:18.04
EXPOSE 80
在这个例子中,我们基于 Ubuntu 18.04 镜像构建一个新的镜像,并将容器的 80 端口暴露出来。这样,当我们运行这个容器时,Docker 会自动将容器的 80 端口映射到宿主机的一个随机端口上。
端口映射
虽然我们在 Dockerfile 中指定了要暴露的端口,但是要实现外部访问容器内的应用服务,还需要在运行容器时进行端口映射。以下是怎样使用 docker run
命令进行端口映射的示例:
docker run -d -p 8080:80 my_image
这里,我们使用了 -p
参数将宿主机的 8080 端口映射到容器的 80 端口上。这样,外部就可以通过访问宿主机的 8080 端口来访问容器内的应用服务了。
总结
在 Dockerfile 中设置端口核心是使用 EXPOSE
指令来指定需要暴露的端口。在实际部署时,还需要使用 docker run
命令的 -p
参数进行端口映射,以实现外部对容器内服务的访问。