[英]PID mapping between docker and host
docker命名空间如何与Host命名空间不同以及如何在这两者之间映射pid? 任何人都可以给我一个想法,有助于使用源代码轻松地映射主机n docker之间的pid?
您可以在/proc/PID/status
文件中找到映射。 它包含如下行:
NSpid: 16950 24
这意味着主机上的16950
在容器内是24
。
正如我在“ 安全地运行docker ”中提到的那样:
目前,Docker使用五个名称空间来更改系统的进程视图:进程,网络,装载,主机名,共享内存。
默认情况下,正如我在上一个问题“ 内核级别的Docker命名空间 ”中提到的那样,容器pid与主机隔离(除非您使用--pid host
运行它们)是设计的。
如果您使用的是--pid=host
,那么这些容器pid在主机中是可见的,但不容易与特定容器匹配,直到问题10163和--pid=container:id
被解析。
2016年5月更新: 问题10163和--pid=container:id
实际上由PR 22481解决为docker 1.12,允许加入另一个容器的PID命名空间。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.