Docker 清理磁盘空间

查看 docker 占用的空间

docker system df
docker system df -v

容器的磁盘占用

在容器内创建一个 100MB 的空文件, 此文件是保存在容器的读写层,当停止容器后,容器占用的空间就会变为可回收的。
如何回收呢?删除容器时会删除其关联的读写层占用的空间。
也可以一键删除所有已经停止的容器:

docker container prune # 删除停止的容器

# 如果想删除所有容器(包括停止的、正在运行的),可以使用下面这2个命令:
docker rm -f $(docker ps -aq)
docker container rm -f $(docker container ls -aq)

镜像的磁盘占用

子镜像,就是被其他镜像引用的中间镜像,不能被删除。
悬挂状态的镜像,就是不会再被使用的镜像,可以被删除。

docker image ls -f dangling=true # 列出所有悬挂状态的镜像
docker image rm $(docker image ls -f dangling=true -q) # 删除这类镜像 或 docker image prune

Build Cache 的磁盘占用

Docker 18.09 引入了 BuildKit,提升了构建过程的性能、安全、存储管理等能力。
删除 build cache 可以使用命令:

docker builder prune

一键清理

像容器、镜像、数据卷都提供了 prune这个子命令,帮助我们回收空间。
docker在系统层面,可以一键清理没用的空间,定期执行这个命令是个好习惯。

docker system prune 
posted @ 2023-04-24 00:01  lqqgis  阅读(130)  评论(0编辑  收藏  举报