Docker 让开发和部署变得容易了,正因为容易导致不经意的就在不断添加新的 docker 映像、容器等。这些都将占用了系统上的宝贵空间,而且是一直在快速地增加。所以有必要清理Docker环境,把一些不在使用的 Docker 资源清理掉。
首先使用 df
命令查看磁盘的使用情况:
docker system df
返回的结果如下:
TYPE TOTAL ACTIVE SIZE RECLAIMABLE
Images 33 8 16.8GB 16.39GB (97%)
Containers 9 1 37.43kB 36.44kB (97%)
Local Volumes 7 2 0B 0B
Build Cache 507 0 21.19GB 21.19GB
请注意,Reclaimable
就是可以恢复的大小,它是通过从总图像大小中减去活动图像的大小来计算的。
接下来就可以使用以下方法来清理:
- 清理停止的容器:使用
docker rm
命令清理停止的容器,命令格式为:docker rm <container_id>
。 - 清理未使用的镜像:使用
docker image prune
命令清理未使用的镜像,命令格式为:docker image prune
。 - 清理无用的数据卷:使用
docker volume prune
命令清理无用的数据卷,命令格式为:docker volume prune
。 - 清理未使用的网络:使用
docker network prune
命令清理未使用的网络,命令格式为:docker network prune
。 - 清理Docker缓存:使用
docker builder prune
命令清理Docker缓存,命令格式为:docker builder prune
。 - 清理Docker日志:使用
docker logs
命令查看容器日志,确认无用日志后,使用truncate
命令清空日志文件,命令格式为:truncate -s 0 <logfile>
。