Docker overlay2 占满磁盘怎么办?先定位再清理
Docker overlay2 占满磁盘怎么办先定位再清理服务器磁盘突然告急/var/lib/docker/overlay2占了几十 GB最危险的做法是直接进入目录删文件。overlay2 保存的是容器可写层和镜像层手工删除可能让正在运行的容器损坏。本文给出一套先确认来源、再安全回收、最后防止复发的流程。先看空间被谁吃掉df-hdockersystemdf-vsudodu-xh/var/lib/docker --max-depth1|sort-hdocker system df -v会列出镜像、容器、volume 和构建缓存。先找到最大的类别不要看到 overlay2 大就认定全是无用镜像。运行中容器写入的临时文件、应用缓存和误写到容器内部的数据也会进入可写层。配置和磁盘怎么选只跑两三个轻量服务40GB 系统盘通常够用镜像多、构建频繁或带数据库建议 80GB 起步。系统盘长期保持 20% 以上空闲才有余量做升级、拉镜像和备份。我会把多项目 Docker 主机放在雨云服务器 rainyun-com的 2 核 4G、80GB 左右磁盘配置上避免每次升级都和空间赛跑。注册填优惠码2026off领 5折预算有限时磁盘余量往往比多一颗核心更有用。安全清理顺序先删除已经确认不用的停止容器和旧镜像dockerps-adockerimagelsdockercontainer prunedockerimage prunedockerbuilder prune这些命令执行前都会显示影响范围。docker system prune -a清得更激进不适合不看提示就运行。volume 里可能是真实业务数据绝不要把docker volume prune当日常清理命令。容器可写层异常变大用下面命令看每个容器的可写层dockerps-s如果某个容器很大通常是日志、下载文件或缓存写进了容器内部。正确修法是把持久数据挂载到明确目录并配置应用清理策略而不是反复 prune。验证和防复发清理后再次运行docker system df -v和df -h确认空间真的释放。再检查 Compose 是否为数据目录配置了 volume、Docker 日志是否设置max-size和max-file。建议给磁盘使用率设置 80% 告警。等到 100% 才处理数据库和容器运行状态往往已经受影响。总结overlay2 大不等于可以直接删。先分清镜像、构建缓存、可写层和 volume再使用 Docker 自带命令回收最后修正数据挂载和日志策略。

相关新闻