Docker 容器内部获取自身容器 id 方法

12 篇文章 0 订阅
5 篇文章 0 订阅

在做集群批量部署的过程中,记录日志及链路追踪时,我们需要在大量的容器中筛选出出现问题或需要记录的容积,以更快的方式确认错误的位置,因此在容器荣能获取到容器的 id 我们即能方便的进行问题定位

  1. 宿主机中获取容器 id 如下图所示
docker ps
CONTAINER ID        IMAGE                             COMMAND                  CREATED             STATUS              PORTS                                                                   NAMES
9440dd89c405        mongo                             "docker-entrypoint.s…"   3 days ago          Up 3 days           0.0.0.0:27017->27017/tcp                                                mongo
  1. 如果想在容器中获取

进入容器

docker exec -it mongo bash

cat /proc/self/cgroup | head -1

输出

12:cpuset:/docker/9440dd89c4052167611e467efd47e1feccabaad448594cbc90eb7fb3f12f4c3f

可以看出后面的 944 开头的就是容器自身的id。

使用:

head -1 /proc/self/cgroup|cut -d/ -f3

输出:

9440dd89c4052167611e467efd47e1feccabaad448594cbc90eb7fb3f

只取12位id

head -1 /proc/self/cgroup|cut -d/ -f3|cut -c1-12

输出:

9440dd89c405
  • 8
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 7
    评论
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值