jenkins - Jenkins 主机磁盘空间不足
问题描述
我在虚拟机的 GCP 上运行 Jenkins。运行几次后,我收到一条错误消息,指出“设备上没有剩余空间”。我已删除/var/lib/workspace目录的所有内容。但我仍然得到同样的错误。我让这个 Jenkins 构建 docker 映像以部署到 GKE。我还删除了所有 docker 镜像和 Docker 容器,但仍然是同样的错误。我该如何解决这个问题?
解决方案
如果某些大文件已被删除,但仍被某些进程打开,则可能会发生这种情况。使用命令检查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
推荐阅读
- typescript - 是否可以在 Typescript 中定义自定义函数类型
- performance - Okhttp 建立数千个客户端连接
- html - 如何在导航下方制作h1文本
- react-native - react-native android 发布环境科学
- macos - 有没有办法将Mac终端环境重置为出厂设置?
- java - 下面的代码只能通过 JMS 调用。修改它,使其也是一个 Web 服务
- javascript - 如何在带参数的函数中设置单个属性 id?
- mysql - 将 csv 文件导入 mysql 服务器,但仅插入第一行并且输入错误
- vue.js - 如何使用 Nuxt.js 扩展根应用程序?
- python - 将多个视频中的帧提取到多个文件夹中