你的浏览器禁用了JavaScript, 请开启后刷新浏览器获得更好的体验!
输入关键字进行搜索
搜索:
没有找到相关结果
subchen
赞同来自: psl77586
ps -ef
ls /.docker*
徐磊 - BlackOps@Qunar
赞同来自: tiancai
/rootfs
/proc/self/cgroup
/proc/self/mountinfo
要回复问题请先登录或注册
容器网络
2 个回复
subchen
赞同来自: psl77586
<ol><li>查看
ps -ef
, pid=0的那个进程</li><li>查看ls /.docker*
有2个隐藏文件</li></ol>徐磊 - BlackOps@Qunar
赞同来自: tiancai
有好几种方式,我说说我知道的:
第一种,cadvisor采用的,简单粗暴,就是启动container的时候额外mount一个
/rootfs
,这样程序内部直接检查/rootfs
是否存在就知道了,相当于一个flag,当然你也可以换成别的。第二种,查看
/proc/self/cgroup
文件,该文件是当前进程的cgroup信息,有的话可以判断自己是运行在cgroup下,想再细致一点的话,判断下cgroup的path是不是docker/xxxxx吧。第三种,查看
/proc/self/mountinfo
文件,这个跟上一个类似,主要看有没有cgroup的挂载信息,不过mount信息里有一部分内容,比如/etc/hosts等跟容器的网络模式关系较大,不建议做为判断依据。集思广益大家一起补充吧,我常用的是第一种,简单好用。