最佳答案
[ Updated1]我有一个 shell,它可以改变某些函数中的 TCP 内核参数,但是现在我需要让这个 shell 在 Docker 容器中运行,这意味着 shell 需要知道它在一个容器中运行,并停止配置内核。
现在我不知道如何做到这一点,下面是容器内 /proc/self/cgroup
的内容:
9:hugetlb:/
8:perf_event:/
7:blkio:/
6:freezer:/
5:devices:/
4:memory:/
3:cpuacct:/
2:cpu:/docker/25ef774c390558ad8c4e9a8590b6a1956231aae404d6a7aba4dde320ff569b8b
1:cpuset:/
我可以使用上面的任何标志来确定这个进程是否在一个容器中运行?
[ Updated2] : 我也注意到了 确定进程是否在 lxc/Docker 内运行,但它似乎在这种情况下不工作,我的容器的 /proc/1/cgroup
的内容是:
8:perf_event:/
7:blkio:/
6:freezer:/
5:devices:/
4:memory:/
3:cpuacct:/
2:cpu:/docker/25ef774c390558ad8c4e9a8590b6a1956231aae404d6a7aba4dde320ff569b8b
1:cpuset:/
No/lxc/Container erid