[英]How to find the container image path based on pod name or container ID
假设我有一个3节点群集(master01,node01,node02)
如何找到节点上正在运行的容器路径? 我可以通过“ oc describe pod”看到容器ID
Container ID: docker://9982c309a3fd8c336c98201eff53a830a1c56a4cf94c2861c52656855cba3558
例如:在节点01上,我可以在“ /var/lib/openshift/openshift.open.local.volumes/pods/”下看到很多目录; 但不确定如何映射到容器名称或容器名称。 似乎未激活的容器映射/装载,但如何清理鼠尾草?
任何帮助真的很感激。 谢谢。
感谢您的回答。
我是从另一个小组找到的,下面给出。
方法1:
kubectl get pods <pod name> -o jsonpath={.metadata.uid}
然后在/var/lib/kubelet/pods/<uid>
所在的节点上查找/var/lib/kubelet/pods/<uid>
(或/var/lib/openshift/pods/<uid>
)中返回的/var/lib/openshift/pods/<uid>
。
方法2:
kubectl describe pod <podname>
从那里获取容器ID 。
然后在节点上运行docker inspect <containerid>
然后在/var/lib/kubelet/pods/<uid>
所在的节点上查找/var/lib/kubelet/pods/<uid>
(或/var/lib/openshift/pods/<uid>
)中返回的/var/lib/openshift/pods/<uid>
。
通常,所有容器文件系统和映像都位于您的docker主目录下,该目录默认为/ var / lib / docker。 您还可以通过查看当前的dockerd进程来查看它是否已自定义配置:
ps -Af | grep dockerd
由于您正在运行docker作为运行时。 您可以用来清理所有垃圾:
docker system prune -a --force
基本上,它会修剪所有退出的容器以及任何容器未使用的图像。
希望能帮助到你!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.