本文以debain文例

gitlab runner (docker模式)在运行一段时间后,可能会由于空间问题导致 There has been a runner system failure, please try again 错误。

此时可以按以下的步骤进行整理:

  1. 登录runner, 进入docker的存储文件夹,比如 :/var/lib/docker 运行du -sh *查看是否的确是空间出了问题。
  2. 确认docker已停止 sudo systemctl stop docker
  3. 删除所有镜像 sudo rm -rf /var/lib/docker/image/*
  4. 删除所有容器 sudo rm -rf /var/lib/docker/containers/*
  5. 删除所有卷 sudo rm -rf /var/lib/docker/volumes/*
  6. 删除所有网络配置 sudo rm -rf /var/lib/docker/network/*
  7. 清理日志文件 sudo journalctl --vacuum-time=1d
  8. 删除存储驱动 sudo rm -rf /var/lib/docker/overlay2/*
  9. 重启 Docker 服务 sudo systemctl start docker
  10. 修改 artifacts 的默认过期时间。方法为:使用管理员登录gitlab,然后点击:setting -> CI/CD -> Continuous Integration and Deployment -> Default artifacts expiration。将其值修改为一个相对小一些的。
  11. 清除runnder缓存:进入项目的pipes -> clear runner cache.

这样以来,过期的docker空间就被释放出来了,同时由于将artifacts的默认过期时间改短, runner 在存储空间的压力也便没有那么大了。


潘杰
3.1k 声望239 粉丝