docker 容器根据 pid 查找该进程所属的容器 发表于 2024-04-26 | 分类于 docker容器 | 暂无评论 有时候我们可能会遇到Docker容器占用资源过高的情况,但我们不知道具体是哪个容器导致的。这时我们可以通过查找进程来找到具体的容器。以下是一些常用的命令: ### 1.通过top查看内存占用高的进程 ```shell PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 2962 root 20 0 1040288 96708 19944 S 0.3 2.5 234:48.26 node ``` ### 2.通过pid查看具体容器 ```shell # docker ps -q | xargs docker inspect --format '{{.Id}} {{.State.Pid}} {{.Name}}'|grep 2962 没有结果输出 ``` ### 3.查找进程父ID ```shell # ps -ef | grep -v grep | grep 2962 | awk '{print $3}' 2370 ``` ### 4.再次通过pid查看具体容器 ```shell # docker ps -q | xargs docker inspect --format '{{.Id}} {{.State.Pid}} {{.Name}}'|grep 2370 a7ee14c010259f0aabxxx 2370 /xxx ``` ### 5.补充,根据容器 container_id 查看pid ```shell docker inspect -f '{{.State.Pid}}' ``` 参考链接 >https://blog.csdn.net/p243679396/article/details/120080919