问题出现:

服务器部署了个jupyternote book ,突然有一天报错: 内核error,没有足够的磁盘空间

问题定位: 

在使用docker时,往往会出现磁盘空间不足,导致该问题的通常原因是因为docker中部署的系统输出了大量的日志内容。

此时,可通过手动或定时任务进行清除。

针对/var/lib/docker/overlay2空间占用很大网上提供了很多解决方案,其中有些误导的说法需要去迁移路径等操作。其实磁盘空间的占用和overlay没关系(它的usage和真实的disk usage相同),它只是一个docker的虚拟文件系统,真实的文件系统是前者/dev/vda1,可以看到路径所指为根目录,所以你要去找是哪里出现了垃圾。

通常情况下与overlay2的同级目录下会有如下的目录:

[root@iZ docker]# ls

builder  buildkit  containerd  containers  image  network  overlay2  plugins  runtimes  swarm  tmp  trust  volumes

而往往占用大量空间的日志文件位于containers下,该目录下存在如下目录:

问题解决步骤:

1. 执行下面语句,定位磁盘占用最高的镜像

du -d1 -h /var/lib/docker/containers | sort -h

2. cd进入该镜像

3. 执行日志清理语句 

cat /dev/null > *-json.log^C

4. 清理完成可不重启服务,但如果允许建议重启一下docker服务。

systemctl restart docker

再次执行df -h命令之后,你会发现overlay2所占的磁盘空间已经减小。

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐