关于卸载 docker 的更新

关于卸载 docker 的更新

我按照卸载说明进行操作这里。然后我运行了这些命令:

sudo apt-get purge docker-engine
sudo apt-get autoremove --purge docker-engine
rm -rf /var/lib/docker

因此,完成所有这些操作后,我运行了这个命令来查看 docker 文件是否在其他地方:

sudo find / -name '*docker*'

我发现几个地方 docker 文件仍然存在。

/etc
/sys
/lib
/usr
/usr
/run
/proc
/var

Docker 位于上述列表中的子文件夹中。如果您愿意,我可以发布每个路径。大约有 200 个位置。

有没有办法可以彻底删除所有地方的 docker?

答案1

要完全卸载 Docker:

步骤1

dpkg -l | grep -i docker

要识别您已安装的软件包:

第2步

sudo apt-get purge -y docker-engine docker docker.io docker-ce docker-ce-cli docker-compose-plugin
sudo apt-get autoremove -y --purge docker-engine docker docker.io docker-ce docker-compose-plugin

上述命令不会删除主机上的镜像、容器、卷或用户创建的配置文件。如果您希望删除所有镜像、容器和卷,请运行以下命令:

sudo rm -rf /var/lib/docker /etc/docker
sudo rm /etc/apparmor.d/docker
sudo groupdel docker
sudo rm -rf /var/run/docker.sock
sudo rm -rf /var/lib/containerd

您已从系统中完全删除 Docker。

答案2

如果你使用的是 Ubuntu,我发现如果安装了 docker,卸载它会容易得多snap。你只需执行以下操作:

sudo snap remove docker

或者,为了避免它为不再需要的快照创建备份数据:

sudo snap remove --purge docker

要查找任何可能剩余的文件,您可以运行

sudo find / -name "*docker*"

如果要删除列出的所有内容(要小心,因为这通常不是你真正想要的),你可以运行,

sudo find / -name "*docker*" -exec `rm -rf` {} +

重要更新

正如评论中提到的,

第二部分是不必要的,而且很危险,至少先不要-exec `rm -rf` {} +运行

第二部分可以删除属于不同包的文件,例如/usr/share/vim/vim80/syntax/dockerfile.vim

因此最好先看看要删除什么。

答案3

从以上帖子和评论中收集的关于删除 docker 和 docker-compose 的协作列表:

sudo apt-get purge -y docker-engine docker docker.io docker-ce  
sudo apt-get autoremove -y --purge docker-engine docker docker.io docker-ce  
sudo umount /var/lib/docker/
sudo rm -rf /var/lib/docker /etc/docker
sudo rm /etc/apparmor.d/docker
sudo groupdel docker
sudo rm -rf /var/run/docker.sock
sudo rm -rf /usr/bin/docker-compose

答案4

关于卸载 docker 的更新

在处理完同样的问题后,对此仅作更新。

这里是官方 docker 文档删除 docker。


删除最新版本:

卸载 Docker Engine、CLI 和 Containerd 软件包:

sudo apt-get purge docker-ce docker-ce-cli containerd.io

删除所有图像、容器和卷:

sudo rm -rf /var/lib/docker
sudo rm -rf /var/lib/containerd

删除以前的版本:

sudo apt-get remove docker docker-engine docker.io containerd runc

相关内容