温馨提示×

如何备份debian jenkins

小樊
52
2026-10-10 22:19:33
栏目: 智能运维

在 Debian 上备份 Jenkins,常见做法包括文件系统备份、Jenkins 自带工具以及插件方式。下面按实用程度给你一套完整方案。


一、最核心要备份的内容(必须)

Jenkins 的所有数据基本都在:

/var/lib/jenkins

主要包括:

  • jobs/:任务配置和历史
  • users/:用户和权限
  • config.xml:全局配置
  • credentials.xml:凭据(非常重要)
  • plugins/:已安装插件
  • secrets/:密钥信息

二、推荐备份方式(最简单可靠)

方式 1:直接打包目录(最常用)

1. 停止 Jenkins(推荐,避免数据不一致)

sudo systemctl stop jenkins

2. 打包备份

sudo tar -czvf jenkins-backup-$(date +%F).tar.gz /var/lib/jenkins

3. 启动 Jenkins

sudo systemctl start jenkins

✅ 恢复时:

sudo systemctl stop jenkins
sudo rm -rf /var/lib/jenkins
sudo tar -xzvf jenkins-backup.tar.gz -C /
sudo systemctl start jenkins

三、不停止 Jenkins 的备份(热备)

如果不方便停机:

sudo tar --exclude=/var/lib/jenkins/workspace \
         -czvf jenkins-backup.tar.gz /var/lib/jenkins

workspace 是构建工作区,一般不需要备份

⚠️ 热备有一定风险,建议低峰期执行。


四、使用 Jenkins 插件备份(图形化)

推荐插件

  • ThinBackup
  • Backup Plugin(较老)

ThinBackup 使用示例

  1. Jenkins → Manage Jenkins → Plugins
  2. 安装 ThinBackup
  3. 配置:
    • 备份目录:/var/backups/jenkins
    • 定时:每天凌晨
    • 勾选:
      • Backup global configuration
      • Backup jobs
      • Backup credentials

✅ 优点:简单、可定时
❌ 缺点:不能备份插件 jar 本身(建议配合文件系统)


五、额外建议备份的内容

1. Jenkins 配置文件

/etc/default/jenkins
/etc/systemd/system/jenkins.service.d/

2. Nginx / 反向代理配置(如有)

/etc/nginx/sites-enabled/jenkins

3. 系统用户(如专用 jenkins 用户)

getent passwd jenkins

六、自动化备份示例(cron)

sudo crontab -e
0 3 * * * systemctl stop jenkins && tar -czf /backup/jenkins-$(date +\%F).tar.gz /var/lib/jenkins && systemctl start jenkins

七、总结(最佳实践)

✅ 生产环境推荐:

  • 停止 Jenkins → 打包 /var/lib/jenkins → 启动
  • 配合 ThinBackup 做每日增量
  • 备份文件传到异地(NAS / 云)

如果你愿意,我可以:

  • 给你一个 一键备份脚本
  • 或针对 Docker 版 Jenkins 做备份方案

0 踩