Containerd下的容器找到overlay的实际路径
来自三线的随记
不同于 docker inspect 能看到实际路径值
containerd 如果 storage/snapshotter 实现是 native overlayfs
那容器的实际fs路径可以通过以下方法获取
通过相关cli拿到容器的id,例如
nerdctl ps / crictl ps / ctr -n ${ns} container ls
然后通过宿主机的挂载点情况即可获取到实际 overlayfs 路径
如:
lowerdir / upperdir / workdir 都可以在此获取
[root@global-1 containerd]# nerdctl ps|grep xy-number-h5-9767c7695-tdnnx 92d645ef7531 10.239.13.12:32758/dev-public/xy-number-h5-uat:v40-b495896 "/docker-entrypoint.…" 2 weeks ago Up k8s://dev-public/xy-number-h5-9767c7695-tdnnx/xy-number-h5 d49604adfa1a 10.239.13.10/registry.k8s.io/pause:3.9 "/pause" 2 weeks ago Up k8s://dev-public/xy-number-h5-9767c7695-tdnnx [root@global-1 containerd]# mount|grep 92d645ef7531 overlay on /run/containerd/io.containerd.runtime.v2.task/k8s.io/92d645ef7531e225509778426de2386690cf9c6fb74a1b7d33337aaa712a6548/rootfs type overlay (rw,relatime,seclabel,lowerdir=/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/24231/fs:/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/24230/fs:/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/24229/fs:/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/24228/fs:/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/24212/fs:/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/11651/fs:/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/11650/fs:/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/11649/fs:/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/11648/fs:/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/11647/fs:/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/11646/fs:/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/11442/fs,upperdir=/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/24232/fs,workdir=/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/24232/work)