前言
今天服务器一直提示资源异常,一看发现空间 32G 快用完了,一层层查询下去发现是 docker 容器overlay2
目录占用了大量空间。下面是清理的方法。
查看服务器内存大小
1 2 3 4 5
| # -T:可以用来查看分区的文件系统。
# -h:表示使用「Human-readable」的输出,也就是在档案系统大小使用 GB、MB 等易读的格式。
df -h
|
查看服务器空间
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| # -h:以人类可读的方式显示。
# -a:显示目录占用的磁盘空间大小,还要显示其下目录和文件占用磁盘空间的大小。
# -s:只显示目录占用的磁盘空间大小,不显示其子目录和文件占用的磁盘空间大小。
# -c:显示几个目录或文件占用的磁盘空间大小,还要统计它们的总和。
# --apparent-size:显示目录或文件自身的大小。
# -l :统计硬链接占用磁盘空间的大小。
# -L:统计符号链接所指向的文件占用的磁盘空间大小。
du -h --max-depth=1 /var/log
|
查看 docker 磁盘使用情况
1 2 3 4 5 6 7
| # 类似于Linux上的df命令,用于查看Docker的磁盘使用情况:
docker system df
# 查看单个image、container大小
docker system df -v
|
清理磁盘,删除关闭的容器、无用的数据卷和网络,以及 dangling 镜像(即无 tag 的镜像)
1 2 3 4 5
| docker system prune
# 彻底清理,可以将没有容器使用Docker镜像都删掉
docker system prune -a
|
- 注意,这两个命令会把你暂时关闭的容器,以及暂时没有用到的 Docker 镜像都删掉了…所以使用之前一定要想清楚.。