温馨提示×

如何迁移ubuntu jenkins

小樊
42
2026-09-22 12:41:40
栏目: 智能运维

下面给你一个在 Ubuntu 上将 Jenkins 迁移到新服务器/新环境的完整、可落地方案,适用于同版本或升级版本迁移。


一、迁移前准备(旧服务器)

1. 确认 Jenkins 安装方式

dpkg -l | grep jenkins

常见两种:

  • apt 安装(推荐,迁移最简单)
  • war 包 + 手动运行

2. 停止 Jenkins

sudo systemctl stop jenkins

3. 备份核心目录(最关键)

Jenkins 所有数据都在:

/var/lib/jenkins

打包(推荐 rsync 或 tar)

sudo tar -czvf jenkins-home.tar.gz /var/lib/jenkins

或只备份重要内容:

/var/lib/jenkins/
├── jobs
├── users
├── credentials.xml
├── config.xml
├── plugins
├── secrets

4. 备份 Jenkins 配置(系统级)

/etc/default/jenkins
/etc/systemd/system/jenkins.service(如有)

5. (可选)备份插件列表

jenkins-cli list-plugins > plugins.txt

二、新服务器安装 Jenkins(Ubuntu)

1. 安装 Java

sudo apt update
sudo apt install openjdk-17-jdk -y

2. 安装 Jenkins

sudo wget -O /usr/share/keyrings/jenkins-keyring.asc \
  https://pkg.jenkins.io/debian-stable/jenkins.io-2023.key

echo deb [signed-by=/usr/share/keyrings/jenkins-keyring.asc] \
  https://pkg.jenkins.io/debian-stable binary/ | \
  sudo tee /etc/apt/sources.list.d/jenkins.list > /dev/null

sudo apt update
sudo apt install jenkins -y

三、迁移 Jenkins 数据(核心步骤)

1. 停止新 Jenkins

sudo systemctl stop jenkins

2. 恢复 Jenkins Home

sudo rm -rf /var/lib/jenkins
sudo tar -xzvf jenkins-home.tar.gz -C /
sudo chown -R jenkins:jenkins /var/lib/jenkins

3. 恢复系统配置(可选)

sudo cp jenkins /etc/default/jenkins

4. 启动 Jenkins

sudo systemctl start jenkins
sudo systemctl enable jenkins

四、验证迁移

  • 访问:http://新IP:8080
  • 检查:
    • 用户是否存在
    • Job 是否完整
    • 凭据是否可用
    • 插件是否加载

五、常见问题

1. 插件版本不兼容

解决:

  • 升级 Jenkins 到最新 LTS
  • 或在新机器先装相同版本 Jenkins

2. 权限错误

sudo chown -R jenkins:jenkins /var/lib/jenkins

3. 端口冲突

修改:

/etc/default/jenkins
JENKINS_PORT=8080

六、推荐做法(生产环境)

✅ 使用 Jenkins LTS + apt
✅ 定期备份 /var/lib/jenkins
✅ 使用 NFS / 对象存储 存 artifacts
✅ CI 配置全部 代码化(JCasC)


如果你愿意,可以告诉我:

  • 是 同服务器重装 还是 跨服务器迁移
  • Jenkins 版本
  • 是否使用 Docker

我可以给你更精确的命令。

0 踩