Jenkins build记录清理,释放磁盘空间方式

 更新时间:2025年11月05日 09:33:28   作者:夜小七  
Jenkins构建记录会占用大量磁盘空间,需要定期清理,可以通过JenkinsJob配置中的“丢弃旧的构建”(DiscardOldBuilds)来清理

 在执行构建任务时,会为每个构建生成一个唯一的 ID,并将其相关信息(如日志、归档制品、状态、参数等)存储在 Jenkins Workspace 的特定目录下。

这些记录时间久了会占用大量磁盘空间,影响 Jenkins 性能,因此定期清理是很有必要的。

Jenkins 构建记录的存储位置

每个 Jenkins Job(项目)的构建记录通常存储在 Jenkins Master 服务器的以下路径下:

${JENKINS_HOME}/jobs/<JOB_NAME>/builds/

清理builds记录的方法

Jenkins 提供了多种机制来清理这些构建记录:

1. Jenkins Job 配置中的“丢弃旧的构建” (Discard Old Builds)

这是最常用、最推荐的清理方式,因为它可以在 Job 级别进行精细控制。

配置步骤:

进入你的 Jenkins Job 配置页面 (Job -> Configure)。

在“General”(或“History”)部分,勾选 “丢弃旧的构建” (Discard Old Builds)

配置清理策略:

  • 天数限制: Days to keep builds (保留多少天内的构建)。
  • 数量限制: Max # of builds to keep (最多保留多少个构建)。

高级设置 (Advanced):

  • Days to keep artifacts / Max # of artifacts to keep: 针对归档的制品进行单独设置。
  • Pattern:通过正则表达式匹配构建描述来决定是否保留。
  • Exclude List:排除某些构建(如带有特定标签的)不被清理。

示例配置:

保留最近 10 个构建,或者 30 天内的构建 (两者之一满足即可):

  • Days to keep builds: 30
  • Max # of builds to keep: 10

只保留最近 5 个构建:

  • Days to keep builds: (空着或保持默认-1)
  • Max # of builds to keep: 5

工作原理: 当一个 Job 有新的构建完成时,Jenkins 会检查此 Job 的“丢弃旧的构建”配置,并根据规则删除不符合条件的旧构建记录。这个过程是异步的,通常在构建完成后或 Jenkins 后台任务运行时进行。

优点:

  • 最便捷、最安全 的方式,Jenkins 官方推荐。
  • 提供 Job 级别的细粒度控制。
  • 能够区分保留的构建数量和保留的天数。
  • 可以单独控制 artifacts 的保留策略。

缺点:

  • 需要为每个 Job 单独配置,如果有很多 Job,工作量较大。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Java使用Servlet生成验证码图片

    Java使用Servlet生成验证码图片

    这篇文章主要为大家详细介绍了Java使用Servlet生成验证码图片,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-08-08
  • 如何使用SpringSecurity保护程序安全

    如何使用SpringSecurity保护程序安全

    这篇文章主要介绍了如何使用SpringSecurity保护程序安全,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-09-09
  • Java流程控制顺序结构原理解析

    Java流程控制顺序结构原理解析

    这篇文章主要介绍了Java流程控制顺序结构原理解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-11-11
  • SpringBoot+MyBatis实现动态字段更新的三种方法

    SpringBoot+MyBatis实现动态字段更新的三种方法

    字段更新是指在数据库表中修改特定列的值的操作,这种操作可以通过多种方式进行,具体取决于业务需求和技术环境,本文给大家介绍了在Spring Boot和MyBatis中,实现动态更新不固定字段的三种方法,需要的朋友可以参考下
    2025-04-04
  • 如何对jdk版本升级或降级

    如何对jdk版本升级或降级

    这篇文章主要介绍了如何对jdk版本升级或降级方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-05-05
  • javac、java打jar包命令实例

    javac、java打jar包命令实例

    这篇文章主要演示Java中使用命令打jar包的实例过程,很实用,希望能给大家做一个参考。
    2016-06-06
  • JAVA 流程控制专项精讲

    JAVA 流程控制专项精讲

    不喜欢罗里吧嗦,讲的很精简易懂。从基础开始讲,后续会讲到JAVA高级,中间会穿插面试题和项目实战,希望能给大家带来帮助
    2022-03-03
  • IDEA运行导入的javaweb项目tomcat正常,但是运行失败404问题

    IDEA运行导入的javaweb项目tomcat正常,但是运行失败404问题

    这篇文章主要介绍了IDEA运行导入的javaweb项目tomcat正常但是运行失败404问题,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-07-07
  • SpringBoot整合jersey的示例代码

    SpringBoot整合jersey的示例代码

    本篇文章主要介绍了SpringBoot整合jersey的示例代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-09-09
  • SpringBoot 策略模式实现切换上传文件模式

    SpringBoot 策略模式实现切换上传文件模式

    策略模式是指有一定行动内容的相对稳定的策略名称,这篇文章主要介绍了SpringBoot 策略模式 切换上传文件模式,需要的朋友可以参考下
    2023-11-11

最新评论