插件窝 干货文章 docker里怎么查端口号

docker里怎么查端口号

端口 Docker 容器 映射 1032    来源:    2025-04-27

Docker 端口查询方法

在 Docker 中查看端口号有几种常用方法,以下是详细的查询方式:

1. 使用 docker ps 命令

这是最常用的查看容器端口映射的方法:

docker ps

输出示例:

CONTAINER ID   IMAGE          COMMAND                  PORTS                                      NAMES
a3b8d9e1f2c5   nginx:latest   "nginx -g 'daemon of…"   0.0.0.0:8080->80/tcp, :::8080->80/tcp     web_server

其中 PORTS 列显示 主机端口->容器端口 的映射关系。

2. 使用 docker port 命令

查看特定容器的端口映射:

docker port <容器ID或名称>

示例:

docker port a3b8d9e1f2c5
# 或
docker port web_server

3. 使用 docker inspect 命令

获取更详细的端口信息:

docker inspect <容器ID或名称> | grep -i port

或查看完整的网络设置:

docker inspect -f '{{range $p, $conf := .NetworkSettings.Ports}} {{$p}} -> {{(index $conf 0).HostPort}} {{end}}' <容器ID或名称>

4. 查看容器内部开放的端口

进入容器内部查看:

docker exec -it <容器ID或名称> netstat -tuln
# 或
docker exec -it <容器ID或名称> ss -tuln

5. 查看 Docker 网络信息

docker network inspect bridge

6. 查看 Docker Compose 服务的端口

如果使用 Docker Compose:

docker-compose ps
# 或
docker-compose port <服务名> <容器端口>

注意事项

  • 端口映射格式为 主机端口:容器端口
  • 如果 PORTS 列为空,表示没有设置端口映射
  • 使用 -P 参数运行容器时,Docker 会随机分配主机端口
  • 使用 -p 参数可以指定端口映射,如 -p 8080:80

希望这些方法能帮助您查询 Docker 中的端口信息!