服务器因 docker 日志占用空间不足
本文记录服务器因 docker 日志占用空间不足的处理过程。
问题处理
启动项目提示找不到缓存文件,登录界面验证码刷不出来
登录服务器重启 docker 后台服务,报错
Error response from daemon: Cannot restart container my-serve: open /var/lib/docker/containers/9988633862afc28bc8764e39a8772f6376298e5d74479226e9a98c05b9e32ce4/hash3450992418: no space left on device
提示空间不足,查看磁盘空间,发现有一个磁盘完全满了
1 | df -h |
查看 docker 日志大小
1 | du -sh /var/lib/docker/containers/*/*-json.log |
发现有一个大日志文件占用了近一半的空间
查找是哪个容器生产的日志
1 | # 上面输出的 /var/lib/docker/containers/<容器完整ID>/ |
停止服务
1 | docker stop the-log-serve |
删除或清空日志文件
1 | rm /var/lib/docker/containers/<CONTAINER_ID>/<CONTAINER_ID>-json.log |
启动服务
1 | docker start the-log-serve |
大日志轮转处理(待完善)
使用 Linux 自带的 logrotate 配置日志轮转
1 | vi /etc/logrotate.d/docker-containers |
写入以下内容:
1 | /var/lib/docker/containers/*/*.log { |