假设我有一个3节点集群(master01,node01,node02)
如何找到节点上正在运行的容器路径? 我可以通过“ oc describe pod”看到容器ID
Container ID: docker://9982c309a3fd8c336c98201eff53a830a1c56a4cf94c2861c52656855cba3558
例如:在节点01上,我可以在“ /var/lib/openshift/openshift.local.volumes/pods/”下看到很多目录;但不确定如何映射到容器名称或容器名称。 似乎无效的容器映射/装载,但如何清理鼠尾草?
任何帮助都非常感谢。谢谢。
答案 0 :(得分:2)
答案 1 :(得分:1)
感谢您的回答。
我在另一个小组中找到了它,并在下面给出。
方法1:
kubectl get pods <pod name> -o jsonpath={.metadata.uid}
然后在Pod所在的节点上查找/var/lib/kubelet/pods/<uid>
(或/var/lib/openshift/pods/<uid>
)中返回的uid。
方法2:
kubectl describe pod <podname>
从那里获取容器ID 。
然后在节点上运行docker inspect <containerid>
然后在Pod所在的节点上查找/var/lib/kubelet/pods/<uid>
(或/var/lib/openshift/pods/<uid>
)中返回的uid。
答案 2 :(得分:0)
通常,所有容器文件系统和映像都位于docker主目录下,该目录默认为/ var / lib / docker。您还可以通过查看当前的dockerd进程来查看它是否已自定义配置:
ps -Af | grep dockerd
因为您正在运行docker作为运行时。您可以用来清理所有垃圾:
docker system prune -a --force
基本上,它会修剪掉所有已退出的容器以及未被任何容器使用的图像。
希望有帮助!