首页/云/云与容器速查/docker port 查看端口映射
容器与 Docker106 条

docker port 查看端口映射

显示容器端口到宿主端口的映射关系:确认 -p 是否生效、映射到哪个地址,是『服务访问不通』的第一现场命令。

云与容器速查云更新于 2026-10-13

docker port 是什么

docker port 显示容器端口到宿主端口的映射关系:用来确认发布参数是否生效、映射到哪个宿主地址与端口。它是服务访问不通这类问题的第一现场命令,先看映射再去查别的。

基本信息

语法docker port 容器,可附加容器内端口
输出容器端口映射到宿主地址与端口
空输出没有任何映射(用了无映射的网络模式或没写发布参数)
对照inspect 的端口字段信息更完整
前提有映射不等于应用在监听,两步都要确认
排查链映射、宿主防火墙、应用监听地址

输出与含义

输出含义下一步
0.0.0.0:8080绑定全部网卡可外部访问,注意暴露面
127.0.0.1:8080只绑定回环地址仅本机可访问
空输出没有发布端口检查运行参数与网络模式
有映射但访问不通应用监听或防火墙问题查容器内监听与安全组

使用示例

使用示例
docker port myapp                                          # 查看全部映射
docker port myapp 80                                       # 只看指定容器端口
docker inspect myapp -f '{{json .NetworkSettings.Ports}}'   # 更完整的映射信息

典型使用场景

  • 服务访问不通时确认映射是否真的生效
  • 排查端口是否只绑定到了回环地址
  • 对比期望端口与实际映射,检查发布参数
  • 迁移到编排平台前梳理端口映射关系
访问不通的检查顺序:先确认映射存在,再查宿主防火墙与安全组,最后确认应用在容器内监听的是全部网卡而不是回环地址。
映射输出里的绑定地址很关键:绑到回环地址时外部无法访问,绑到全部网卡时则要注意服务的暴露面。
有映射不等于应用可用:容器端口映射正确但应用没监听或只监听回环地址,外部依旧连不上。
用编排工具部署时端口映射写在编排文件里,排查前先确认实际生效的是哪一份配置,而不是只看命令行历史或旧脚本。

易错点

  • 应用监听回环地址:容器内端口没对外,映射也连不上
  • 宿主防火墙或安全组没放行:容器映射正常但外部无法访问
  • 只看容器列表不看实际映射:误以为端口已经发布
  • 映射到全部网卡却以为是本机专用:服务被暴露到公网
  • 换了容器名却查旧容器:结论对不上实际运行的服务

数据来源与参考

  • Docker Docs:docker port

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌