CentOS系统升级Jenkins详细步骤
备份关键数据
升级前务必备份Jenkins的所有配置文件、作业定义及插件数据,避免升级失败导致数据丢失。常用备份命令:
sudo cp -r /var/lib/jenkins /var/lib/jenkins_backup # 备份Jenkins主目录(含作业、配置)
sudo cp /usr/share/jenkins/jenkins.war jenkins.war_bak # 备份旧版WAR文件(可选)
检查Java版本兼容性
Jenkins对Java版本有严格要求(如Jenkins 2.463及以上需要Java 17+,2.357及以上需要Java 11)。通过以下命令检查当前Java版本:
java -version
若版本不符合要求,需先升级Java:
sudo yum install java-17-openjdk-devel -y # 安装OpenJDK 17(以Jenkins 2.463为例)
确认Jenkins当前版本
通过浏览器访问http://<服务器IP>:8080,进入Jenkins管理界面,点击“关于Jenkins”查看当前版本,或在终端运行:
/usr/share/jenkins/jenkins.war --version
下载最新稳定版WAR文件
访问Jenkins官方网站(https://www.jenkins.io/download/)或国内镜像(如清华源),下载对应版本(如LTS版)的WAR文件:
wget https://mirrors.tuna.tsinghua.edu.cn/jenkins/war/stable/jenkins.war -P /usr/share/jenkins/
停止Jenkins服务
升级前需停止正在运行的Jenkins进程,避免文件冲突:
sudo systemctl stop jenkins
替换WAR文件并重启服务
将下载的新WAR文件替换旧文件,然后重启Jenkins服务:
sudo mv /usr/share/jenkins/jenkins.war /usr/share/jenkins/jenkins.war.bak # 可选:备份旧WAR
sudo mv /usr/share/jenkins/jenkins-new.war /usr/share/jenkins/jenkins.war # 替换为新WAR
sudo systemctl start jenkins # 启动Jenkins
sudo systemctl enable jenkins # 设置开机自启
验证升级结果
打开浏览器访问http://<服务器IP>:8080,若页面显示新版本号(如“Welcome to Jenkins 2.463”),则说明升级成功。
若当前Jenkins是通过YUM包管理器安装的,可通过以下步骤实现自动升级:
更新YUM仓库缓存
sudo yum makecache
执行自动升级
sudo yum update jenkins -y
重启服务
sudo systemctl restart jenkins
插件兼容性
升级前建议通过“系统管理→插件管理”检查插件兼容性,升级不兼容插件(如标记为“不兼容”的插件),避免升级后出现功能异常。
防火墙设置
若防火墙阻止了Jenkins端口(默认8080),需开放端口:
sudo firewall-cmd --permanent --zone=public --add-port=8080/tcp
sudo firewall-cmd --reload
查看升级日志
若升级后出现问题,可通过以下命令查看Jenkins日志定位原因:
tail -f /var/log/jenkins/jenkins.log
回滚方案
若升级失败,可通过备份恢复旧版本:
sudo systemctl stop jenkins
sudo mv /usr/share/jenkins/jenkins.war.bak /usr/share/jenkins/jenkins.war # 恢复旧WAR
sudo systemctl start jenkins