[英]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.