Docker 查看容器外部端口

在使用 Docker 部署应用程序时,我们通常需要查看容器内部应用程序所使用的端口,以便与外部服务通信。本文将介绍如何通过 Docker 命令和 Docker Compose 查看容器的外部端口,并提供相应的代码示例。

Docker 命令查看容器外部端口

使用 Docker 命令可以方便地查看正在运行的容器的外部端口。下面是查看容器外部端口的步骤:

  1. 首先,使用 docker ps 命令查看正在运行的容器:
docker ps
  1. 找到要查看的容器的 CONTAINER ID 或 NAMES。

  2. 使用 docker port 命令查看容器的外部端口:

docker port [CONTAINER_ID or NAMES]

例如,如果要查看名为 web-server 的容器的外部端口,可以运行以下命令:

docker port web-server

这将显示容器的外部端口映射情况,例如 80/tcp -> 0.0.0.0:32769 表示容器的 80 端口映射到了主机的 32769 端口。

Docker Compose 查看容器外部端口

如果使用 Docker Compose 来管理容器,可以通过 docker-compose psdocker-compose port 命令来查看容器的外部端口。下面是查看容器外部端口的步骤:

  1. 首先,使用 docker-compose ps 命令查看正在运行的容器:
docker-compose ps
  1. 找到要查看的容器的 NAME。

  2. 使用 docker-compose port 命令查看容器的外部端口:

docker-compose port [NAME] [PORT]

例如,如果使用 Docker Compose 启动了一个名为 web 的服务,并想要查看该服务的 80 端口映射情况,可以运行以下命令:

docker-compose port web 80

这将显示服务的外部端口映射情况,例如 0.0.0.0:32769 表示服务的 80 端口映射到了主机的 32769 端口。

示例

接下来,我们通过一个简单的示例来演示如何使用 Docker 和 Docker Compose 查看容器的外部端口。

Docker 示例

假设我们有一个名为 web-server 的容器正在运行,我们想要查看该容器的外部端口:

  1. 使用 docker ps 命令查看容器的 CONTAINER ID 或 NAMES。

  2. 运行以下命令查看容器的外部端口:

docker port web-server

Docker Compose 示例

假设我们使用 Docker Compose 启动了一个名为 web 的服务,我们想要查看该服务的 80 端口映射情况:

  1. 使用 docker-compose ps 命令查看服务的 NAME。

  2. 运行以下命令查看服务的外部端口:

docker-compose port web 80

通过以上步骤,我们可以方便地查看容器的外部端口,并与外部服务进行通信。

序列图

下面是一个简单的序列图,展示了如何通过 Docker 查看容器的外部端口:

sequenceDiagram
    participant Host
    participant Docker
    Host ->> Docker: docker ps
    Docker -->> Host: 容器列表
    Host ->> Docker: docker port [CONTAINER_ID or NAMES]
    Docker -->> Host: 外部端口映射情况

流程图

最后,我们将上述流程整理为一个流程图:

flowchart TD
    A[查看正在运行的容器] --> B[获取 CONTAINER ID 或 NAMES]
    B --> C[使用 docker port 命令查看外部端口]

通过以上步骤和示例,我们可以轻松地查看 Docker 容器的外部端口,方便我们进行应用程序开发和部署。