docker 用久了,难免会占用很多空间,有时候不知道是怎么占用的,就几十几百G了。
要怎么找到是什么东西占用的?运行
docker system df
会返回像
TYPE TOTAL ACTIVE SIZE RECLAIMABLE
Images 59 8 83.21GB 77.55GB (93%)
Containers 9 8 2.344GB 0B (0%)
Local Volumes 1 1 0B 0B
Build Cache 10 0 6.38GB 5.47GB
这样的结果。我们就可以发现是 image 和 build cache 在疯狂占用空间。
对于 images,可以通过以下办法来删除:
1. 删除悬空镜像 (未被任何镜像引用的中间层)
docker image prune
2. 删除所有未被容器使用的镜像 (包括未被标记和未被容器引用的镜像)
docker image prune -a
而 build cache,可以这样清理:
docker builder prune
后记:最近很少更新博文,我感觉最大的原因是大语言模型的普及。很多类似的技术问题,问 LLM 都能有比较好的答案,不用去阅读一些低质量的文章踩坑了。