当前位置: 首页 > news >正文

查看使用宿主机模式的Docker容器端口

当Docker容器使用宿主机模式(--net=host)时,容器会直接使用宿主机的网络命名空间,这意味着容器和宿主机共享相同的网络接口和端口。在这种情况下,容器内部的进程就像在宿主机上直接运行一样,不会通过Docker的网络栈进行端口映射。因此,我们无法通过Docker的命令(如docker portdocker inspect)直接查看容器使用的端口。不过,我们可以通过查看宿主机上的进程和端口使用情况来确定容器使用了哪些端口。

一、使用netstatss命令

netstatss命令可以查看宿主机上所有进程的端口使用情况。你可以通过grep命令过滤出属于容器进程的端口。

1.使用netstat命令

netstat -tulnp | grep <container_process_name>

例如,如果你知道容器运行的进程名称是nginx,可以运行:

netstat -tulnp | grep nginx

2.使用ss命令

ss -tulnp | grep <container_process_name>

例如:

ss -tulnp | grep nginx

二、使用lsof命令

lsof命令可以列出所有打开的文件和网络连接,包括端口。你可以通过lsof命令来查看宿主机上所有进程的端口使用情况。

1.查看所有进程的端口使用情况

lsof -i

2.过滤特定进程的端口使用情况

如果你知道容器运行的进程名称,可以使用grep来过滤:

lsof -i | grep <container_process_name>

例如:

lsof -i | grep nginx

三、查看容器内部的进程

如果你不确定容器内部运行的进程名称,可以进入容器内部查看。

1.进入容器

docker exec -it <container_id_or_name> /bin/bash

2.在容器内部使用netstatss命令

在容器内部,你可以使用netstatss命令来查看容器内部的端口使用情况:

netstat -tulnp

或者:

ss -tulnp

四、查看容器的进程信息

如果你不知道容器的进程号,但知道容器的名称或ID,可以使用docker top命令查看容器内部的进程信息。

1.查看容器的进程信息

docker top <container_id_or_name>

这将列出容器内部运行的所有进程及其进程号。

2.结合lsof命令查看端口

你可以将docker top命令的输出与lsof命令结合使用,来查看这些进程使用的端口。例如:

docker top <container_id_or_name> | awk '{print $2}' | xargs -I {} lsof -i -p {}

示例

假设你的容器名称是myapp,你可以按照以下步骤操作:

1.查看容器的进程信息

docker top myapp

2.提取进程号并查看端口

docker top myapp | awk '{print $2}' | xargs -I {} lsof -i -p {}

Mermaid解释图

以下是使用Mermaid绘制的解释图,展示如何查看宿主机模式下容器的端口使用情况。

graph TDA[开始] --> B[容器使用宿主机模式]B --> C{是否知道进程名称}C -->|是| D[使用netstat或ss命令]C -->|否| E[进入容器内部]D --> F[netstat -tulnp | grep <进程名称>]D --> G[ss -tulnp | grep <进程名称>]E --> H[docker exec -it <容器ID或名称> /bin/bash]H --> I[在容器内部使用netstat或ss命令]I --> J[netstat -tulnp]I --> K[ss -tulnp]F --> L[查看端口使用情况]G --> LJ --> LK --> LL --> M[结束]

相关文章:

  • 0x90属性中的属性名$I30和Scb->AttributeName的关系
  • vue3+element-plus+pinia完整搭建好看简洁的管理后台
  • 【愚公系列】《Manus极简入门》054-家庭冲突调解师:“家庭和谐使者”
  • 1998-2023年各地级市地区生产总值、地级市GDP数据(全市)
  • 杨校老师竞赛课之青科赛GOC3-4年级组模拟题
  • 【博通芯片方案】调试指令详解版二(无线)
  • C++学习:六个月从基础到就业——多线程编程:线程池实现
  • day26- 系统编程之 文件IO(II) 及 文件属性
  • DeepSeek:开启IT领域人效管理新时代
  • 【无标题】西门子S7-1500PLC与西门子V90 PN伺服通讯控制项目程序项目程序,共有8轴,编码器信号直接输入到变频器内。
  • win11远程桌面设置60fps无效
  • 12kV 环保气体绝缘交流金属封闭开关设备现场交流耐压试验规范
  • 「Python教案」运算符的使用
  • 【详解自定义类型:联合和枚举】:联合体类型的声明、特点、大小的计算,枚举类型的声明、优点和使用
  • 2023河南CCPC省赛vp部分补题
  • [Java恶补day3] 128. 最长连续序列
  • 【C语言】复习~动态内存管理
  • python线性回归
  • 国标GB28181设备管理软件EasyGBS视频监控系统打造工厂可视化监管场景解决方案
  • HTML应用指南:利用POST请求获取全国中通快递服务网点位置信息
  • 专业做刀具网站的公司/百度seo刷排名软件
  • 网站建设服务合同/广西seo优化
  • wap网站实例/网站设计公司哪家专业
  • 北京网站建设方案书/网络广告名词解释
  • 谁做网站/深圳全网推广排名
  • 做外贸需关注的网站/百度搜索怎么优化