ubuntu系统删除 Docker 启动的所有容器、卸载 Docker 以及清理 Docker 相关保留路径

复制代码
#!/bin/bash

# 检查是否以 root 权限运行
if [ "$EUID" -ne 0 ]; then
    echo "请以 root 权限运行此脚本。"
    exit 1
fi

# 停止并删除所有 Docker 容器
echo "正在停止并删除所有 Docker 容器..."
# 停止所有正在运行的 Docker 容器
docker stop $(docker ps -aq) 2>/dev/null
# 删除所有 Docker 容器
docker rm $(docker ps -aq) 2>/dev/null


# 删除所有 Docker 镜像
echo "正在删除所有 Docker 镜像..."
docker rmi $(docker images -aq) 2>/dev/null

# 卸载 Docker 软件包 Ubuntu/Debian  Docker CE/EE(官方版本)
echo "正在卸载 Docker 软件包..."
apt-get purge -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin docker-ce-rootless-extras

# 清理 Docker 相关保留路径
echo "正在清理 Docker 相关保留路径..."
# 删除 Docker 数据目录
rm -rf /var/lib/docker
# 删除 Docker 配置目录
rm -rf /etc/docker

# 清理残留的 Docker 网络
echo "正在清理残留的 Docker 网络..."
docker network prune -f 2>/dev/null

echo "Docker 清理完成。"

上述脚本用于 Ubuntu 系统,用于停止并删除所有 Docker 容器、镜像,卸载 Docker 软件包

卸载 Docker 相关软件包如果你是最新版本,需要修改如下:

复制代码
# 卸载 Docker Engine、CLI、Containerd 和 Docker Compose 插件
sudo apt-get remove docker docker-engine docker.io containerd runc

检查 Docker 是否已卸载

docker --version

docker-compose --version

检查相关进程是否仍在运行

ps aux | grep -i docker

相关推荐
java_logo9 小时前
Docker 部署 DeepSeek Harness(moelin):轻松搭建带登录的本地 AI Agent 平台
运维·docker·容器·ai agent·deepseek·harness·轩辕镜像
xbzb10 小时前
容器 IP 每次重建都变?docker network 五种模式与自定义网桥固定地址
网络·docker·容器·ip·network·固定
打工仔折腾 AI14 小时前
Changedetection.io 网页变动监控:Docker 部署、通知配置与公网暴露实践
运维·人工智能·后端·python·docker·容器·性能优化
xbzb19 小时前
自建镜像仓库:registry 一条命令 + harbor 部署、授权、跨库同步与卸载
docker·harbor·镜像·仓库·同步·registry
瓦瓦gogo2 天前
从一个 TypeScript 函数开始理解 MCP 协议
linux·ubuntu·typescript
鱼听禅2 天前
Ubuntu安装YOLOv8进行菌落识别训练
linux·python·yolo·ubuntu
wz97542 天前
Docker 从 systemd 托管容器、overlay2 存储驱动到 Compose 多容器实战
spring cloud·docker·eureka
新*2 天前
ES 7.17 三节点 Docker 集群接入 IK 自定义词典:一次从丢插件到热更新的完整排障
运维·elasticsearch·docker·中文分词·ik分词
小白的码BUG之路2 天前
Jenkins -- gitee+docker+harbor+k8s 部署项目
docker·gitee·jenkins
AlfredZhao2 天前
Docker Compose 平滑切换环境变量文件,容器配置不残留
docker