Files
shell-scripts/常用脚本/docker清理/docker清理说明.md
zeaslity 87c9529a2f 新增firefly引用部署
优化clash verge的DNS问题-极致优化
2026-01-07 10:47:52 +08:00

64 lines
1.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

由于你的主机上已经没有任何容器,可以使用以下命令彻底清理 Docker 残留数据:
## 检查当前空间占用
```bash
# 查看 Docker 存储使用情况
docker system df -v
# 查看 overlay2 目录下各子目录占用空间
du -sh /var/lib/docker/overlay2/* | sort -rh | head -20
```
## 清理方案(按彻底程度排序)
### 方案一:使用 Docker 内置清理命令
这是最安全的方法,会清理所有未使用的资源
```bash
# 删除所有停止的容器、未使用的网络、悬空镜像和构建缓存
docker system prune -a -f
# 同时清理未使用的 volumes
docker system prune -a -f --volumes
# 清理构建缓存
docker builder prune -a -f
```
### 方案二:手动清理特定资源
如果方案一清理不彻底,可以逐项清理
```bash
# 删除所有容器
docker rm -f $(docker ps -a -q)
# 删除所有镜像
docker rmi -f $(docker images -q)
# 删除所有 volumes
docker volume prune -f
# 删除所有网络
docker network prune -f
```
### 方案三:完全重置 Docker终极方案
如果确认不需要保留任何 Docker 数据,可以完全重置
```bash
# 停止 Docker 服务
sudo systemctl stop docker
# 删除整个 Docker 数据目录
sudo rm -rf /var/lib/docker
# 重启 Docker 服务
sudo systemctl start docker
```
## 注意事项
- **方案一和二**不会影响正在运行的容器,但你的主机已经没有容器了,所以可以放心执行
- **方案三**会删除所有 Docker 数据,包括镜像、容器、卷和网络配置,执行后需要重新拉取镜像
- 建议先执行方案一,通常就能释放大部分空间