我正在尝试测量 Docker 容器的详细 CPU 使用情况。 (“详细”是指例如 usr、sys、sofirq、guest 等)
也就是说,
docker stats
对我不起作用。
我决定使用pidstat。 (因为我会在虚拟机进程上做同样的事情。)
所以,我需要 Docker 容器的 pid。
我尝试过
docker inspect -f '{{.State.Pid}}'
。
但我认为这个命令只给出容器“初始”进程的pid。
我需要在容器(=命名空间)中运行的整个进程的CPU使用率。(即类似于
docker stats
)
我该怎么做?
如果容器中只有一个进程,并且我使用
docker inspect -f '{{.State.Pid}}'
的pid,它与docker stats
结果相同吗?
(我认为在这种情况下可能会缺少一些开销。)
您的命令即将完成。应该是
$docker inspect -f '{{.State.Pid}}' <container_id>
。对于 docker stats,您可能还需要以 sudo 方式运行它。