判断当前环境是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:/
逆水行舟,不进则退。
原文地址:https://www.cnblogs.com/rab3it/p/14760769.html