以下是 Debian 系统上 Jenkins 迁移 的完整方案,适用于同机迁移、跨服务器迁移、版本升级迁移等场景。
lsb_release -a
java -version
jenkins --version
sudo systemctl stop jenkins
Jenkins 的 核心数据目录 是:
/var/lib/jenkins
其中包含:
jobs/:任务配置users/:用户plugins/:插件config.xml:全局配置secrets/:凭证、密钥nodes/:节点workspace/:工作空间(可选)sudo tar -czvf jenkins-backup.tar.gz /var/lib/jenkins
scp jenkins-backup.tar.gz user@new-server:/tmp/
sudo apt update
sudo apt install jenkins
sudo systemctl stop jenkins
sudo mv /var/lib/jenkins /var/lib/jenkins.bak
sudo tar -xzvf /tmp/jenkins-backup.tar.gz -C /
sudo chown -R jenkins:jenkins /var/lib/jenkins
sudo systemctl start jenkins
✅ 迁移完成
插件已包含在 /var/lib/jenkins/plugins
⚠️ 注意:
wget -q -O - https://pkg.jenkins.io/debian-stable/jenkins.io.key | sudo apt-key add -
sudo sh -c 'echo deb https://pkg.jenkins.io/debian-stable binary/ > /etc/apt/sources.list.d/jenkins.list'
sudo apt update
sudo apt install jenkins
/var/lib/jenkins/jobs
/var/lib/jenkins/users
/var/lib/jenkins/secrets
/var/lib/jenkins/credentials.xml
⚠️ 不建议单独迁移,容易出错
sudo chown -R jenkins:jenkins /var/lib/jenkins
http://<ip>:8080/manage/plugins/
sudo nano /etc/default/jenkins
修改:
HTTP_PORT=8081
如果是 Docker Jenkins:
docker cp jenkins_home container:/var/jenkins_home
或挂载目录迁移:
/var/jenkins_home
/var/lib/jenkins 完整备份| 场景 | 推荐方式 |
|---|---|
| 同版本迁移 | 完整目录复制 |
| 升级迁移 | 先备份 → 升级 → 恢复 |
| 跨服务器 | tar + scp |
| Docker | volume 迁移 |
如果你愿意,我可以:
直接告诉我你的 Jenkins 版本 + Debian 版本 + 是否跨服务器 即可。