ubuntu下卸载docker方式与具体步骤
在 Ubuntu 系统下卸载 Docker 包括卸载 Docker 引擎、相关配置文件以及清理残留数据。
以下是详细步骤:
卸载前的准备工作
在开始卸载前,有两件关键的事情需要做:
- 备份数据:卸载过程会删除所有容器、镜像、卷等数据,请务必确认已备份所需数据。详细数据备份方法请参照其它文档。
- 停止服务:首先停止Docker相关的服务。
sudo systemctl stop docker

上图中的警告是因为除了 docker.service服务单元,系统中还存在一个 docker.socket 单元。
这个设计是为了按需启动Docker:即使 docker.service 被停止,当你执行任何Docker命令时,系统检测到对 docker.socket 的访问,也会自动启动Docker服务。
使用以下命令停用docker.socket,如果你登录的用户为root,可以不加sudo,如下图。
sudo systemctl stop docker.socket sudo systemctl disable docker.socket

卸载 Docker 引擎(CE/EE)------这是官方推荐的方式
卸载 Docker 引擎、CLI 和运行的容器
sudo apt-get purge docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

上图在执行命令时报错,其实是我的系统中没有安装docker-buildx-plugin 和 docker-compose-plugin,那么只需在命令行中删除这两个包即可卸载成功,如下图。

在上图卸载docker及其组件成功后,日志中有一条警告信息:
dpkg: warning: while removing pnetlab-docker, directory ‘/etc/docker’ not empty so not removed。
提示目录 /etc/docker 目录中有文件,无法删除,我们根据需要可进入目录手动删除。
如下图:

清理残留文件
删除 Docker 相关配置和数据目录
sudo rm -rf /var/lib/docker sudo rm -rf /var/lib/containerd sudo rm -rf ~/.docker # 用户级的 Docker 配置(如认证信息)
删除 Docker 组(如果有创建过)
sudo groupdel docker


移除依赖和无用包
自动移除不再需要的依赖
sudo apt-get autoremove -y

清理 apt 缓存
sudo apt-get clean

验证卸载
检查 Docker 是否已卸载
docker --version
检查残留进程(可选)
ps aux | grep docker
下图提示docker已经卸载完成。

从 sources.list 移除 Docker 仓库
如果之前添加了 Docker 的 APT 仓库,可以移除它:
sudo rm /etc/apt/sources.list.d/docker.list sudo apt-get update
下图提示我的系统中之前没有添加Docker 的 APT 仓库,所以移除失败。

注意事项
- 数据备份:卸载前确保备份重要容器、镜像或卷(/var/lib/docker 下的数据)。
- 权限问题:如果非root用户使用 sudo 操作仍报错,检查当前用户是否在 docker 组中(卸载后建议移除该组)。
- 其他工具:如果安装非插件版本的 docker-compose,可使用以下命令单独卸载。
sudo apt-get remove docker-compose
下图显示没有安装非插件版的docker-compose


完成上述步骤后,Docker 应已彻底从系统中移除。
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
dockerfile中su命令切换用户激活环境,报错su: invalid option
本文主要介绍了dockerfile中su命令切换用户激活环境以及报错su: invalid option -- ‘n‘的问题解决,具有一定的参考价值,感兴趣的可以了解一下2025-01-01
从零搭建到生产环境配置详解Docker部署MongoDB的完整流程
在容器化技术日益普及的今天,使用 Docker 部署 MongoDB 已经成为开发和生产环境的标配方案,本文详细介绍了使用Docker部署MongoDB的全过程,希望可以带大家全面掌握 Docker 部署 MongoDB 的核心技能2026-05-05


最新评论