小编典典

如何从容器本身获取 Docker Linux 容器信息?

all

我想让我docker containers知道他们的配置,就像您可以通过元数据获取有关 EC2 实例的信息一样。

我可以使用(前提docker是监听端口4243

curl http://172.17.42.1:4243/containers/$HOSTNAME/json

获取它的一些数据,但想知道是否有更好的方法至少获取容器的完整 ID,因为HOSTNAME实际上缩短为 12 个字符,并且 docker
似乎对其执行“最佳匹配”。

另外,如何获取 docker 主机的外部 IP(除了访问特定于 AWS 的 EC2 元数据)


阅读 127

收藏
2022-07-28

共1个答案

小编典典

我发现容器 id 可以在 /proc/self/cgroup 中找到

因此,您可以通过以下方式获取 id:

cat /proc/self/cgroup | grep -o  -e "docker-.*.scope" | head -n 1 | sed "s/docker-\(.*\).scope/\\1/"
2022-07-28