温馨提示×

CentOS Overlay配置中的端口映射方法

小樊
57
2025-08-26 22:43:59
栏目: 智能运维

在CentOS中,使用Overlay网络时,可以通过端口映射(Port Mapping)将容器内的端口映射到宿主机上的端口。以下是配置端口映射的方法:

  1. 使用docker run命令创建并运行一个容器时,可以使用-p--publish选项来设置端口映射。例如,将容器的80端口映射到宿主机的8080端口:
docker run -d -p 8080:80 --name my_container my_image

这里,-d表示以守护进程模式运行容器,-p用于设置端口映射,8080:80表示将容器的80端口映射到宿主机的8080端口,--name用于指定容器名称,my_image表示使用的镜像。

  1. 如果需要映射多个端口,可以在-p选项后添加多个端口映射,用空格隔开。例如,将容器的80端口映射到宿主机的8080端口,将容器的443端口映射到宿主机的8443端口:
docker run -d -p 8080:80 -p 8443:443 --name my_container my_image
  1. 如果需要映射容器的随机端口到宿主机的指定端口,可以使用-P--publish-all选项。例如,将容器的所有端口映射到宿主机上随机可用端口:
docker run -d -P --name my_container my_image

在这种情况下,可以使用docker ps命令查看容器映射到的宿主机端口:

docker ps

输出示例:

CONTAINER ID   IMAGE         COMMAND                  CREATED         STATUS         PORTS                                      NAMES
1234567890ab   my_image      "python app.py"          2 minutes ago   Up 2 minutes   0.0.0.0:8080->80/tcp, 0.0.0.0:8443->443/tcp   my_container

这里,0.0.0.0:8080->80/tcp表示将容器的80端口映射到宿主机的8080端口,0.0.0.0:8443->443/tcp表示将容器的443端口映射到宿主机的8443端口。

注意:在Docker Compose中,也可以使用ports选项来设置端口映射。例如:

version: '3'
services:
  my_service:
    image: my_image
    ports:
      - "8080:80"
      - "8443:443"

0