在 CentOS 上升级/更新 Jenkins,常见有两种情况:通过官方仓库更新(推荐) 和 手动替换 WAR 包更新。下面按使用场景一步步说明。
rpm -q jenkins
# 或
jenkins --version
查看仓库是否存在:
ls /etc/yum.repos.d/jenkins*
如果没有,添加官方仓库(CentOS 7 / 8 / Stream 通用):
sudo wget -O /etc/yum.repos.d/jenkins.repo \
https://pkg.jenkins.io/redhat-stable/jenkins.repo
sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io-2023.key
✅ 推荐使用 redhat-stable,更稳定
sudo yum clean all
sudo yum makecache
sudo yum update jenkins -y
sudo systemctl restart jenkins
查看状态:
sudo systemctl status jenkins
浏览器访问:
http://<服务器IP>:8080
或在服务器:
jenkins --version
wget https://get.jenkins.io/war-stable/latest/jenkins.war
或指定版本:
wget https://get.jenkins.io/war-stable/2.426.1/jenkins.war
cp /usr/lib/jenkins/jenkins.war /usr/lib/jenkins/jenkins.war.bak
cp jenkins.war /usr/lib/jenkins/jenkins.war
sudo systemctl restart jenkins
| Jenkins 版本 | 最低 Java |
|---|---|
| ≥ 2.361 | Java 11 |
| ≥ 2.415 | Java 17(推荐) |
检查 Java:
java -version
如果版本过低:
sudo yum install java-17-openjdk -y
并修改 Jenkins 启动参数:
vi /etc/sysconfig/jenkins
JENKINS_JAVA_CMD="/usr/lib/jvm/java-17-openjdk/bin/java"
更新 Jenkins 后:
firewall-cmd --add-port=8080/tcp --permanent
firewall-cmd --reload
# 保持官方仓库
sudo yum update jenkins -y
sudo systemctl restart jenkins
如果你愿意,可以告诉我:
我可以给你 最稳妥的升级方案(包括回滚方案)。