最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
Docker 卸载与清理残留如何做
时间:2026-09-04 09:50:47 编辑:袖梨 来源:一聚教程网
真正干净卸载Docker需分步操作:先备份镜像、卷、配置等关键数据;再停止并删除所有容器、镜像、网络及卷;接着手动清除/var/lib/docker、/etc/docker等核心目录和systemd服务文件;最后验证docker命令不存在、目录无残留、服务未注册。
卸载 Docker 不能只靠包管理器删软件,残留的镜像、容器、卷、配置和系统服务会干扰重装或占用大量空间。真正干净的卸载需要分步操作:先备份关键数据,再逐层清理运行时资源,最后清除系统级文件和配置。
一、卸载前务必备份重要数据
删除不可逆,尤其镜像和卷里的业务数据。重点备份以下几类:
-
镜像:用
docker save -o backup.tar nginx:latest导出单个或多个镜像 -
卷数据:Docker 卷默认在
/var/lib/docker/volumes/,直接复制对应目录到安全位置 -
配置文件:保留
/etc/docker/daemon.json(全局配置)和~/.docker/config.json(用户登录信息)
二、清理运行时资源(容器、镜像、网络、卷)
这部分可分步执行,避免误删正在使用的资源:
- 停止并删除所有容器:
docker stop $(docker ps -aq) && docker rm -f $(docker ps -aq) - 删除所有镜像:
docker rmi -f $(docker images -q)(注意:需确保无容器依赖该镜像) - 清理无用资源(推荐日常使用):
docker system prune -a -f,它会删掉悬空镜像、未使用的网络、构建缓存和已停止容器 - 手动清空卷(谨慎):
docker volume rm $(docker volume ls -q),仅在确认卷中无关键数据时执行
三、彻底删除 Docker 文件与系统配置
包管理器卸载后,这些目录和服务仍存在,必须手动清除:
- 删除核心数据目录:
sudo rm -rf /var/lib/docker /var/lib/containerd - 删除配置与运行时文件:
sudo rm -rf /etc/docker /run/docker.sock /var/run/docker.sock - 清理用户级配置:
rm -rf ~/.docker - 移除 systemd 服务定义:
sudo rm -f /lib/systemd/system/docker*.service /etc/systemd/system/docker*.service.d,然后执行sudo systemctl daemon-reload - 删除 docker 用户组(如不再需要):
sudo groupdel docker 2>/dev/null
四、验证是否清理干净
执行以下检查确认无残留:
- 运行
docker version应报“command not found” - 检查目录:
ls /var/lib/docker应提示“no such file or directory” - 查看服务状态:
systemctl list-unit-files | grep docker不应有输出 - 搜索零散文件:
find / -name "*docker*" 2>/dev/null | grep -E "(bin|sbin|lib)",对非系统路径下的残留酌情处理