判断当前环境是linux是 docker容器的方法
使用cgroup命令查看:
cat /proc/1/cgroup
原理:容器是通过 cgroup 实现资源限制,判断容器是否在一个 cgroup 组中
如果是docker,显示:
cpuset:/kubepods/burstable/podc....
cpuacct,cpu:/kubepods/burstable/podc....
oom:/
pids:/kubepods/burstable/podc....
memory:/kubepods/burstable/podc....
perf_event:/kubepods/burstable/podc....
hugetlb:/kubepods/burstable/podc....
devices:/kubepods/burstable/podc....
blkio:/kubepods/burstable/podc....
net_cls:/kubepods/burstable/podc....
freezer:/kubepods/burstable/podc....
name=systemd:/kubepods/burstable/podc....
如果是虚拟机或者物理机器:
pids:/
freezer:/
hugetlb:/
oom:/
cpuacct,cpu:/
net_cls:/
blkio:/
devices:/
cpuset:/
memory:/
perf_event:/
name=systemd:/
逆水行舟,不进则退。