gpt4 book ai didi

c - 用于查找容器内部容器名称的 C 程序 - LXC

转载 作者:行者123 更新时间:2023-11-30 19:42:10 25 4
gpt4 key购买 nike

我正在寻找 C 特定函数,如果它在容器内执行,则返回容器名称;我们有这样的东西吗?

目前我正在尝试通过读取文件/proc/1/cgroup 来获取它

@容器:

      $> cat /proc/1/cgroup 
8:net_cls:/lxc/Container1
7:freezer:/lxc/Container1
6:devices:/lxc/Container1
5:memory:/lxc/Container1
4:cpuacct:/lxc/Container1
3:ns:/Container1
2:debug:/lxc/Container1
1:cpuset:/lxc/Container1

@主持人:

      $> cat /proc/1/cgroup 
8:net_cls:
7:freezer:
6:devices:
5:memory:
4:cpuacct:
3:ns:
2:debug:
1:cpuset:

通过这个我们可以获得容器名称;这里它是在容器1内执行程序时的“container1”,否则该函数在主机上执行相同的程序时返回“NULL”。

最佳答案

我认为在“C”语言中不存在您正在寻找的任何此类程序。

但是你可以自己编写一个简单的C程序来检查名为“/.dockerinit”的docker init文件是否存在。该文件存在于每个 docker 容器内(Docker 创建它)。

如果该文件存在,您可以打印主机名。

关于c - 用于查找容器内部容器名称的 C 程序 - LXC,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32732782/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com