如何在删除overlay2文件夹后修复docker容器

7

文件夹docker/overlay2已被删除,现在我所有的容器都出现错误:stat /var/lib/docker/overlay2/***: 没有那个文件或目录。是否有办法修复此问题而不会丢失所有容器数据?

2个回答

8

解决方案

docker rm $(docker ps -a -q)
docker rmi $(docker images -q)

1
请注意,这将清除所有Docker镜像和容器内容。如果这是您想要的操作,那么可以执行此操作,但对于某些用例可能不够细致。 - Terry Brown

3
有没有办法在不丢失所有容器数据的情况下修复这个问题?
不,您已经失去了容器数据。现在您所剩下的只是指向数据曾经所在位置的指针。这就是为什么我强烈建议不要从此文件夹内删除文件,除非您计划将docker完全重置为空状态。如果您有命名卷中的数据,您可能希望先保存该文件夹。此时,最干净的做法是关闭docker引擎,删除/var/lib/docker中的其余文件和目录,然后重新启动。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接