我想使用kubectl cp将文件从已完成的pod复制到我的本地主机(本地计算机)。我使用kubectl cp/:/然而,它给了我一个错误:不能执行到一个容器在一个完整的pod;当前阶段成功错误。有没有一种方法,我可以复制文件从一个完整的pod?它不需要kubectl cp.任何帮助感谢!
没有。如果荚果消失了,就永远消失了。唯一的可能性是数据存储在PV或其他外部资源中。豆荚是牛,不是宠物。
您可以找到这些文件,因为状态为Completed
的pod的容器没有被删除,它们只是没有运行。
我不知道通过Kubernetes本身有什么方法可以做到这一点,但如果你的容器运行时是Docker的话,这里是如何做到的:
$ ssh <node where the pod is>
$ docker ps -a | grep <pod name>
$ docker cp <pod name>:/your/files ./
容器中的文件只是覆盖挂载;如果容器还存在,则文件还存在。
因此,如果您正在使用容器运行时或其他东西,请查看/var/lib/containers
或其他东西(不知道不同的运行时在哪里进行覆盖挂载,但它不能不在节点上)。你可以通过$ mount
检查你是否找到了。