docker命名空间与Host命名空间有何不同? pid如何在这两者之间映射?谁能给我一个想法,帮助我做一个简单的方法来映射pid之间的主机和码头使用源代码?
发布于 2017-02-03 02:41:34
您可以在/proc/PID/status文件中找到该映射。它包含如下一行:
NSpid: 16950 24这意味着主机上的16950是容器内的24。
发布于 2015-10-26 04:40:05
正如我在“Running docker securely”中提到的:
目前,Docker使用五个名称空间来改变系统的进程视图:进程、网络、挂载、主机名、共享内存。
正如我在上一个问题"Docker Namespace in kernel level“中提到的,默认情况下,容器pid与主机隔离(除非您使用--pid host运行它们),这是设计出来的。
如果您使用的是--pid=host,那么在解析issue 10163 and --pid=container:id之前,这些容器pids从主机上是可见的,但是不容易与特定的容器匹配。
更新2016年5月:PR 22481实际上为docker 1.12解析了issue 10163 and --pid=container:id,允许加入另一个容器的PID命名空间。
https://stackoverflow.com/questions/33328841
复制相似问题