docker清理空间
查看磁盘占用情况
df -lh
查看当前目录占用情况
du -sh *
查看docker占用情况
docker system df
TYPE
列出了docker 使用磁盘的 4 种类型:
- Images:所有镜像占用的空间,包括拉取下来的镜像,和本地构建的。
- Containers:运行的容器占用的空间,表示每个容器的读写层的空间。
- Local Volumes:容器挂载本地数据卷的空间。
- Build Cache:镜像构建过程中产生的缓存空间(只有在使用 BuildKit 时才有,Docker 18.09 以后可用)。
最后的 RECLAIMABLE
是可回收大小。
容器的磁盘占用
每次创建一个容器时,都会有一些文件和目录被创建,例如:
/var/lib/docker/containers/ID
目录,如果容器使用了默认的日志模式,他的所有日志都会以JSON形式保存到此目录下。/var/lib/docker/overlay2
目录下含有容器的读写层,如果容器使用自己的文件系统保存了数据,那么就会写到此目录下。
清理所有停止的容器和镜像
docker container prune
docker image prune
docker system prune -a
docker volume prune
清理docker日志文件
echo "======== start clean docker containers logs ========" logs=$(find /var/lib/docker/containers/ -name *-json.log) for log in $logs do echo "clean logs : $log" cat /dev/null > $log done echo "======== end clean docker containers logs ========"
将日志文件大小清零
truncate -s 0 /var/lib/docker/containers/95eb16a9f7023e6e221dd1d2f0a11c52fc4dd14aa790d83105176919a2193a16/*-json.log
限制日志文件大小
nginx: image: nginx:1.12.2 restart: always logging: driver: "json-file" options: max-size: "5g"
清理目录下很久没更新的Id
/var/lib/docker/vfs/dir
-----------更新清理空间------------
查找并删除大文件:
//这个命令会列出系统中的前 20 个大文件和目录。找到不再需要的文件或日志文件并删除它们。
sudo du -ah / | sort -n -r | head -n 20
清理 APT 缓存:
sudo apt-get clean
清理 Docker 镜像和容器:
//清理无用的镜像和容器:如果虚拟机关机了所有容器都停止了那么会清空所有容器和镜像 docker system prune -a
查找并清理较大的日志文件:
sudo find /var/log -type f -name "*.log" -delete
删除不必要的软件包:
sudo apt-get autoremove
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
2021-04-07 gitee如何更新部署项目
2021-04-07 docker安装rancher