使用 docker 时遇到 no space left on device 问题的解决

kuberlin 2020-04-08

0、在执行 docker 操作时,总是提示错误:no space left on device

1、检查 linux 磁盘占用:df –h

2、了解到 linux 下还有另一个有关磁盘文件的占用 inode:df –ih

了解更多:http://www.ruanyifeng.com/blog/2011/12/inode.html

3、发现 inode 占用已经 100%

4、搜索了一下,发现 docker 有命令:docker system prune 清除不用的镜像和缓存,但因为不是存储镜像和缓存过多导致的,所以此方法不行。

5、通过统计查找文件最多的目录:

for i in /var/lib/docker/overlay2/*; do echo $i; find $i |wc -l|sort -nr; done

6、发现有一个容器目录的 tmp 文件夹文件内容超多,进入无法直接 ls 查看

7、通过 ls | less 命令分页查看,Ctrl+F 下一页,Ctrl+B 上一页。

8、基本上都是临时文件,清空即可,唔,删除用了一个小时才删完。。。

相关推荐