我正在Macbook上的Docker
中运行一个Mongo容器。为了显示该特定容器中的进程,我们使用TOP
命令,如下所示。
在Udemy的一些教程视频中,讲师表示,上面图片中带有PID
3238的过程在主持人和命令ps aux
中显示为进程。
但是,我无法在主机上的进程列表下找到PID
3238的进程。想知道我是否错误地设置了Docker或者我错过了什么?
答案 0 :(得分:2)
Docker container
默认情况下与主机操作系统具有不同的PID命名空间。
为了与Host OS共享PID命名空间,您应该使用host pid mode
。
例如,
$ docker run --rm --pid=host -it ubuntu:16.04 top
该命令显示主机操作系统的所有进程,包括top
中的container
进程,您还可以在top
container
进程中找到相同的PID和主机操作系统中的top
进程。
对于docker-compose是here。