来自守护进程的错误响应:stat/var/lib/doker/btrfs/subvolumes/[..]:没有这样的文件



我手动删除了一个docker管理的子卷

btrfs subvolume delete /var/lib/docker/btrfs/subvolumes/<subvolume id>

但是当我试图重新创建它时,它给了我这个错误,如果不对docker安装进行核化,我就无法解决这个错误

Error response from daemon: stat /var/lib/docker/btrfs/subvolumes/<subvolume id>: no such file or directory

已经尝试stop/rm -f容器,docker system prune -fsystemctl restart docker.service对无效

我自己删除btrfs子卷后也出现了错误(docker system prune没有释放子卷的错误仍然存在(。

要恢复,您还必须删除/var/lib/docker

systemctl stop docker
rm -rf /var/lib/docker
systemctl start docker

好吧,我在fedora上遇到了同样的问题,默认情况下使用btrfs。删除/var/lib/doker目录将删除所有docker数据,包括图像、容器、卷和其他配置文件。
这样做基本上将Docker重置为干净状态,就好像你刚刚第一次安装Docker一样。

但是,删除/var/lib/doker目录将导致数据丢失
所有与Docker相关的数据,如运行的容器、映像和卷,都将永久丢失。如果您在Docker容器或卷中存储了重要数据,则删除此目录后,该数据将消失
删除映像,并且只有路径/var/lib/doker/btrfs中的btrfs目录才能解决问题,无需docker系统修剪或删除hole-docker目录

docker rm -f $(docker ps -aq)
docker rmi $(docker images -aq)
sudo systemctl stop docker
sudo rm -rf /var/lib/docker/btrfs
sudo systemctl start docker

这是一个更快、更安全的解决方案
注意,删除btrfs目录可能需要一段时间,因为它可能有太多的文件

相关内容

  • 没有找到相关文章

最新更新