Docker端口映射的实现可以通过容器内指定端口映射到宿主机上来实现容器与宿主机之间的网络通信。以下是实现 Docker 端口映射的攻略:
1. 容器内指定端口
可以在 Dockerfile 中通过指定 EXPOSE 指令指定需要映射的端口。比如:
FROM nginx:latest
EXPOSE 80
这里的含义是将容器内的80端口映射到宿主机上,是一种暴露端口的方式。
2. 宿主机映射端口
除了在容器内指定端口外,另一种实现 Docker 端口映射的方式是在启动容器时指定端口映射。Docker run 命令支持 -p 指令制定端口映射,比如:
docker run -itd --name nginx-test -p 8080:80 nginx:latest
这里的含义是将宿主机的 8080 端口映射到容器的 80 端口上。此时,可以通过在浏览器上输入 http://localhost:8080
来访问容器内的服务。
示例1:通过容器内指定端口实现端口映射
以下是 Dockerfile 的代码实现:
FROM nginx:latest
EXPOSE 80
这里指定了需要映射的端口为80。然后通过 docker build
命令将 Dockerfile 构建成镜像:
docker build -t my-nginx:latest .
接下来启动容器,同时映射端口:
docker run -itd --name nginx-test -p 8080:80 my-nginx:latest
这里的含义是将宿主机的 8080 端口映射到容器的 80 端口上。此时,可以通过在浏览器上输入 http://localhost:8080
来访问容器内的服务。
示例2:通过宿主机映射端口实现端口映射
以下是直接使用 Docker 命令实现的端口映射:
docker run -itd --name nginx-test -p 8080:80 nginx:latest
这里的含义是将宿主机的 8080 端口映射到容器的 80 端口上。此时,可以通过在浏览器上输入 http://localhost:8080
来访问容器内的服务。
以上就是使用 Docker 实现端口映射的完整攻略,两个示例分别演示了如何在容器内指定端口和宿主机映射端口实现端口映射。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Docker端口映射的实现 - Python技术站