You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何清理build volume并删除旧构建以缩减其占用容量

清理Build Volume释放空间的可行方案

优先用CI/CD工具原生留存策略清理

不管你用的是Jenkins、GitLab CI、GitHub Actions、Drone这类自建工具,还是云厂商托管的CI服务,都自带构建留存配置,优先用原生功能清理,不会出现误删正在使用的构件的问题:

  • 设置按构建留存天数清理,常规业务场景保留30~90天的构建产物完全足够
  • 设置按最近N个成功构建留存,比如只保留最近20个成功构建的产物,更早的自动清理
  • 单独关闭失败构建的产物长期留存权限,大部分场景下失败构建的调试产物保留7天即可,无需长期存放在存储卷中

手动清理未被引用的旧构建

如果是自建的存储卷,没有绑定CI/CD自动清理策略,可以手动扫描清理:

  • 先执行扫描命令预览待清理内容,避免误删:
    如果是存标准构建产物的目录,可以用find命令筛选旧文件,比如筛选出90天前前缀为build-的构建目录:
    find /path/to/build/volume -type d -mtime +90 -name "build-*"

    执行删除操作前必须先运行上述预览命令,确认输出的所有目录都是可以删除的旧构建,避免丢失需要保留的文件

  • 确认无误后执行删除命令:
    find /path/to/build/volume -type d -mtime +90 -name "build-*" -exec rm -rf {} +
  • 如果用Docker卷作为Build Volume,可以直接清理无主的镜像层、构建缓存:
    docker builder prune -af
    该命令会清理所有没有被正在使用的镜像引用的构建缓存层,通常可以释放大量占用空间

清理后的空间回收注意

  • 如果你的Build Volume用的是精简制备(thin provisioning)的存储,删除文件后空间会自动释放回存储池
  • 如果是厚制备的磁盘/卷,删除文件后需要根据文件系统执行Trim操作才能回收未使用的空间,ext4、xfs文件系统都可以执行fstrim /path/to/build/volume/mountpoint完成空间回收
  • 不要直接缩小卷的逻辑容量,先确认文件系统的已用空间确实降到你预期的大小后,再执行卷缩容操作,避免出现文件系统损坏

内容的提问来源于stack exchange,提问作者Scott Messinger

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 02:24:01