Docker - 查看容器进程在宿主机的 PID


  1. 概述

    1. 查看 docker 进程, 在容器外的 pid
  2. 背景

    1. docker 中运行的进程, 本质上是运行在 host 上的
    2. 这些进程, 在 host 上, 也可以有自己的 pid
    3. 如果某种情况下, 连不上 docker 了, 可以直接通过 host, 把对应的 进程 干掉
  3. 环境

    1. os
      1. CentOS7
    2. docker
      1. 版本
        1. 18.09
      2. 容器
        1. 有一个 docker 容器, 正在运行

1. 方法1: docker container top

  1. 命令

    > docker container top <container>
    

2. 方法2: docker container inspect

  1. 命令

    > docker inspect -f '{{.State.Pid}}' <container>
    

3. 方法3: 直接查看

  1. 准备

    1. 确认容器 id
  2. 命令

    # 只要有 容器id, 可以在 docker daemon无法启动的情况下, 确认 pid
    > cat /sys/fs/cgroup/memory/docker/<containerId>/cgroup.procs
    

ps

  1. ref

    1. 在docker宿主机上查找指定容器内运行的所有进程的PID
  2. cgroup

    1. docker 的底层原理, 就是这个东西
    2. 有空 学习一下...

免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2020 CODEPRJ.COM