温馨提示×

怎么迁移debian jenkins

小樊
38
2026-10-13 21:36:15
栏目: 智能运维

下面按常见场景给你一个比较完整的 Debian 上 Jenkins 迁移指南。如果你只是想“换一台机器继续用 Jenkins”,最推荐的是整体目录迁移法。


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

1. 停止 Jenkins

sudo systemctl stop jenkins

2. 备份关键目录

Jenkins 核心数据都在 /var/lib/jenkins:

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

可选备份:

  • 配置文件:/etc/default/jenkins 或 /etc/sysconfig/jenkins
  • Nginx / Apache 反向代理配置
  • 插件(已包含在 home 里)

3. 记录版本信息

jenkins --version

或

dpkg -l | grep jenkins

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

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

sudo apt update
sudo apt install jenkins -y

⚠️ 先不要启动 Jenkins


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

1. 拷贝备份文件到新服务器

scp jenkins-home.tar.gz user@new-server:/tmp/

2. 解压覆盖 Jenkins Home

sudo systemctl stop jenkins
sudo rm -rf /var/lib/jenkins
sudo tar -xzvf /tmp/jenkins-home.tar.gz -C /
sudo mv /tmp/var/lib/jenkins /var/lib/jenkins

3. 修复权限(非常重要)

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

四、启动 Jenkins

sudo systemctl start jenkins
sudo systemctl enable jenkins

访问:

http://<新服务器IP>:8080

✅ 如果版本一致,Job、插件、用户都会原样保留。


五、版本不一致怎么办?

  • 小版本升级:一般没问题
  • 大版本跳跃(如 2.3xx → 2.4xx):
    • 先在新机器装旧版本 Jenkins
    • 迁移数据
    • 再在 Web 界面升级

六、只迁移 Job(轻量方式)

如果不想整体迁移:

/var/lib/jenkins/jobs/

只拷贝需要的 Job 目录,重启 Jenkins 即可。


七、常见坑

❌ 权限不对 → Jenkins 起不来
❌ Java 版本不兼容
❌ 插件版本冲突(可先禁用插件)
❌ 忘记迁移 secrets/ 导致凭证失效


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

  • 是 同版本迁移 还是 升级迁移
  • 是否使用 Docker / K8s
  • 是否只迁 Job 不迁插件

我可以直接给你定制命令。

0 踩