在docker客戶端命令行中我們可以使用top查看容器中運行的進程信息。容器運行時不一定有/bin/bash終端來交互執(zhí)行top命令,而且容器還不一定有top命令,可以使用docker top來實現(xiàn)查看container中正在運行的進程。
當我們想要在宿主機上查看容器內部的進程情況時可以使用top命令,docker容器內的一個進程對應于宿主機器上的一個進程,容器內的進程,與相對應的宿主進程,由相同的uid、gid擁有。也就是說,如果在容器內主進程屬于用戶uid=1000,那么這個容器進程在宿主機器上也屬于用戶uid=1000。容器內的用戶uid=1000就是容器外的用戶uid=1000,也是其他容器內的用戶uid=1000。
語法
docker top [OPTIONS] CONTAINER [ps OPTIONS]
例如,查看容器mymysql的進程信息,命令如下:
$ docker top mynginx
查看所有運行容器的進程信息,命令如下:
$ for i in `docker ps |grep Up|awk '{print $1}'`;do echo \ &&docker top $i;
done
相關閱讀:
云計算核心技術Docker教程:pause/unpause命令詳解