【问题标题】:Jenkins pipeline with Docker image is eating up disk space (Ubuntu)带有 Docker 映像的 Jenkins 管道正在占用磁盘空间(Ubuntu)
【发布时间】:2026-01-05 01:35:01
【问题描述】:
我在 Ubuntu 16.04 上运行 Jenkins 管道,使用 Docker 映像在我的 Android 项目上运行单元测试。我将 Jenkins 配置为一次只保存 1 个构建并丢弃较旧的构建(我使用的 vps 只有 40GB 的磁盘空间)。但是每次构建时,var/lib/docker/aufs/diff 文件夹都会增长 500Mb~ 这似乎无法清理。
非常感谢您提供有关如何解决此问题的任何提示!
【问题讨论】:
标签:
android
ubuntu
docker
jenkins
diskspace
【解决方案1】:
在构建新测试时,您之前的构建似乎没有被标记。
为了节省空间,您可以在 Jenkins 管道中运行以下命令以在测试完成运行后删除未标记的图像
docker rmi $(docker images | grep '<none>' | awk '{print $3}')
命令分解:
docker rmi — 删除图片
docker images — 列出图像 -> 管道到 grep 并列出所有带有标签 <none> 的未标记图像 -> 使用 awk 列出所有未标记的图像 ID
如果您实际上是在每次测试运行时重命名图像名称,只需将 grep 值更改为图像名称即可。即
docker rmi $(docker images | grep '<IMAGE_NAME>' | awk '{print $3}')
【解决方案2】:
你知道 Jenkins 使用哪个文件夹来构建你的管道吗?我认为您需要将本地目录(主机)作为 volume 传递给您的容器