首页 > 解决方案 > Jenkins 主机磁盘空间不足

问题描述

我在虚拟机的 GCP 上运行 Jenkins。运行几次后,我收到一条错误消息,指出“设备上没有剩余空间”。我已删除/var/lib/workspace目录的所有内容。但我仍然得到同样的错误。我让这个 Jenkins 构建 docker 映像以部署到 GKE。我还删除了所有 docker 镜像和 Docker 容器,但仍然是同样的错误。我该如何解决这个问题?

标签: jenkinsgoogle-cloud-platform

解决方案


如果某些大文件已被删除,但仍被某些进程打开,则可能会发生这种情况。使用命令检查lsof | grep deleted哪些进程打开了已删除文件的描述符。您可以重新启动该过程,空间将被释放。

另一个技巧是修剪 docker

在 Docker 端释放空间最有用的命令如下:

docker system prune

这将删除:

  • 所有停止的容器
  • 至少一个容器未使用的所有卷
  • 至少一个容器未使用的所有网络
  • 所有悬空的图像

要清洁系统,请先移除容器

$ docker rm $(docker ps -aq)

然后删除图像

$ docker rmi $(docker images -q)

这将删除所有容器和所有图像。您可以通过docker rm #CONTAINER_ID#docker rmi #IMAGE_ID


推荐阅读