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

相关推荐
程序员老赵16 分钟前
Docker 部署 go2rtc:轻松搭建摄像头多协议流媒体平台
前端·docker·直播
keyipatience30 分钟前
IP网络层
服务器·网络·网络协议·ubuntu·http
牢姐与蒯1 小时前
Linux进程(七).进程控制
linux·运维·服务器·ubuntu
努力努力再努力wz1 小时前
【Docker入门系列】:从架构演进到容器化:一文建立 Docker、虚拟化与 Namespace 的底层心智模型
运维·开发语言·数据结构·c++·docker·容器·架构
重生之我是Java开发战士1 小时前
【Spring Cloud】Eureka服务注册发现与LoadBalancer负载均衡
spring cloud·eureka·负载均衡
吴佳浩 Alben2 小时前
多智能体系统的通信风暴与死锁治理:生产级降级与容灾方案
人工智能·docker·ai·容器·架构
wdfk_prog3 小时前
Docker 29 与 containerd image store:镜像为什么会保存两种形态
运维·docker·容器
张洛闻Eren3 小时前
云原生k8s【第七课】:集群监控与可观测性
linux·运维·docker·云原生·容器·kubernetes·k8s
Y38153266213 小时前
Docker Compose 服务依赖与健康检查:healthcheck 让容器按正确顺序启动
运维·docker·容器
2601_9652354815 小时前
快速了解docker
docker·容器·dubbo