【linux】记录/var/lib/docker/overlay2/磁盘爆满的解决过程
前言:
linux虚拟机使用docker部署了一些程序,又是程序页面无法访问,登录linux服务器查看磁盘空间,发现磁盘爆满。
一、排查步骤
1.1 用docker ps命令检查docker正在执行的容器 ,竟然发现有容器服务不能正常运行。
1.2 用df -h命令查询,结果发现磁盘满了
1.3 硬盘满后,查不了很具体的磁盘信息,先删除一些无关紧要的文件,再次进行查询,查到的又是/var/lib/docker/overlay2文件。
1.4 用du -h max-depth=1命令一步一步找到具体占用磁盘空间的文件,发现是某个容器的log文件。
1.5 用docker ps | grep 命令找到对应的运行容器(这里容器的id是var/lib/docker/containers文件夹名字的前12位,用grep命令很容易找到)。
二、解决步骤
2.1 用docker logs -f 命令打印对应容器的logs信息,log等级还是debug等级,输出好多log信息。
2.2 修改容器服务的log等级;把第四点提到的占了巨大存储的xxx.json.log文件删除。
2.3 然后重启服务器 sudo reboot,文件解决
三、其他建议
为了安全也可对容器的log文件大小进行限制。