docker system 命令
docker system df命令,类似于 Linux 上的df命令,用于查看 Docker 的磁盘使用情况:
docker system df
TYPE TOTAL ACTIVE SIZE RECLAIMABLE
Images 147 36 7.204GB 3.887GB (53%)
Containers 37 10 104.8MB 102.6MB (97%)
Local Volumes 3 3 1.421GB 0B (0%)
Build Cache 0B 0B
docker system prune命令可以用于清理磁盘,删除关闭的容器、无用的数据卷和网络,以及 dangling 镜像(即无 tag 的镜像)。
docker system prune -a命令清理得更加彻底,可以将没有容器使用 Docker 镜像都删掉。
注意,这两个命令会把你暂时关闭的容器,以及暂时没有用到的 Docker 镜像都删掉了…所以使用之前一定要想清楚吶。
手动清理
- 清理无用的容器
使用命令docker ps -a
列出所有容器,找出不再需要的容器,使用命令docker rm <container_id>
删除它们。在删除容器之前,可以使用命令docker stop <container_id>
先停止容器。
- 清理无用的镜像
使用命令docker images
列出所有镜像,找出不再需要的镜像,使用命令docker image rm <image_id>
删除它们。在删除镜像之前,可以使用命令docker stop <container_id>
先停止容器。
- 清理无用的数据卷
使用命令docker volume ls
列出所有数据卷,找出不再需要的数据卷,使用命令docker volume rm <volume_name>
删除它们。在删除数据卷之前,需要先删除使用该数据卷的容器。
- 清理无用的网络
使用命令docker network ls
列出所有网络,找出不再需要的网络,使用命令docker network rm <network_name>
删除它们。在删除网络之前,需要先删除使用该网络的容器。
5. 清理Docker日志
Docker日志会占用大量空间,可以使用命令docker logs --tail 50 <container_id>
来查看最近50行的日志。如果需要清理全部日志,可以使用命令truncate -s 0 /var/lib/docker/containers/*/*/*.log
来清空所有日志文件。