简短结论:CentOS 里的 overlay(overlayfs)本身“不额外占多少空间”,但它下面的上层目录(upperdir)会真实占用磁盘空间;如果你用的是 Docker 的 overlay2 存储驱动,镜像和容器产生的数据都可能落在里面,所以“看起来占用大”通常不是 overlay 本身,而是数据。
下面分情况说明:
几乎不占。
overlay 是一种联合挂载文件系统:
✅ 文件没修改时:不占额外空间 ❌ 文件被修改(写时复制,copy-on-write):会在 upperdir 复制一份
在 CentOS 7/8 上,Docker 默认存储驱动通常是 overlay2:
路径一般是:
/var/lib/docker/overlay2
这里会包含:
容易“占用大”的原因:
/var/lib/docker/containers/*/json.log)df -h
du -sh /var/lib/docker
看具体:
du -sh /var/lib/docker/overlay2
清理 Docker:
docker system df
docker system prune -a
⚠️ prune -a 会删未使用镜像,谨慎操作
如果你愿意,可以告诉我:
df -h 和 du 的结果我可以帮你具体看是哪块在吃空间。