Ubuntu 系统上完全卸载 Docker

以下是在 Ubuntu 系统上完全卸载 Docker 的分步指南

一.卸载验证

二.卸载步骤

1.停止 Docker 服务
bash 复制代码
sudo systemctl stop docker.socket
sudo systemctl stop docker.service
2.卸载 Docker 软件包
bash 复制代码
# 移除 Docker 核心组件
sudo apt-get purge -y \
    docker-ce \
    docker-ce-cli \
    containerd.io \
    docker-buildx-plugin \
    docker-compose-plugin

# 移除残留依赖
sudo apt-get autoremove -y --purge
3.删除 Docker 数据和配置文件
bash 复制代码
# 删除 Docker 数据目录
sudo rm -rf /var/lib/docker
sudo rm -rf /var/lib/containerd

# 删除配置文件
sudo rm -rf /etc/docker
sudo rm -rf /etc/containerd

# 删除用户组(如有)
sudo groupdel docker
4.清理仓库配置
bash 复制代码
# 删除 Docker 官方仓库源
sudo rm -f /etc/apt/sources.list.d/docker.list
sudo rm -f /etc/apt/keyrings/docker.gpg
5.删除残留镜像和容器(可选)
bash 复制代码
# 强制删除所有容器、镜像、卷和网络(谨慎操作!)
sudo docker rm -f $(sudo docker ps -aq) 2>/dev/null
sudo docker rmi -f $(sudo docker images -aq) 2>/dev/null
sudo docker volume prune -f
sudo docker network prune -f
6.验证卸载
bash 复制代码
# 检查 Docker 命令是否存在(应提示未找到)
which docker

# 检查 Docker 服务状态(应提示无此服务)
systemctl status docker

三.卸载后注意事项

  1. 用户组清理

    如果之前将用户加入过 docker 组,需手动编辑 /etc/group 文件:

    bash 复制代码
    sudo nano /etc/group  # 删除用户行中的 ",docker"
  2. 镜像加速残留

    如果配置过镜像加速器,检查并清理以下文件:

    bash 复制代码
    sudo rm -f /etc/docker/daemon.json
  3. 内核模块残留(可选)

    移除 Docker 相关内核模块:

    bash 复制代码
    sudo modprobe -r overlay br_netfilter

四.卸载对比表

操作 影响范围 是否必须
apt-get purge 移除软件包和配置文件
rm -rf /var/lib/docker 删除所有容器、镜像和卷数据 推荐
groupdel docker 清理用户组权限 可选
清理仓库源 防止残留仓库干扰后续安装 推荐

五.常见问题

问题 1:卸载后 /var/lib/docker 仍存在
bash 复制代码
# 手动删除(可能需 root 权限)
sudo rm -rf /var/lib/docker
问题 2:重新安装时报错
bash 复制代码
# 完全清理后重试
sudo apt-get update
sudo apt-get install docker-ce

通过以上步骤,可彻底清除 Ubuntu 系统中的 Docker 环境。

希望这篇文章对你有所帮助!如果觉得不错,别忘了点赞收藏哦!

相关推荐
dessler8 分钟前
Kubernetes(k8s)-隔离(Cordon)和驱逐(Drain)
linux·运维·kubernetes
行者Sun198911 分钟前
【Docker】Dockerfile 优化工具 hadolint
运维·docker·容器
浩浩测试一下30 分钟前
网络安全之超强Linux信息收集:渗透测试与应急响应的基石(命令超强集合工作手册)
linux·运维·服务器·安全·web安全·网络安全·系统安全
GISer_Jing37 分钟前
前端常问的宏观“大”问题详解(二)
linux·前端·ubuntu
带鱼吃猫39 分钟前
Linux系统:进程状态与僵尸、孤儿进程
linux·服务器
郝晨妤1 小时前
【鸿蒙5.0】向用户申请麦克风授权
linux·服务器·前端·华为·harmonyos·鸿蒙
树下一少年2 小时前
docker-compose部署prometheus+grafana+node_exporter
docker·json·grafana·prometheus·node_exporter
头发尚存的猿小二2 小时前
Linux--文件
linux·运维·服务器
榆榆欸2 小时前
5.实现 Channel 类,Reactor 模式初步形成
linux·网络·c++·tcp/ip
白夜易寒2 小时前
Docker学习之服务编排(day9)
学习·docker·eureka