我在服务器的/var/lib/hudson目录下安装了一个哈德逊。当我通过浏览器中的URL访问jenkins时,我在页面底部看到了版本1.411。有人知道如何通过命令行(CLI)更新Jenkins吗?如果可能的话。当我转到“管理Jenkins”页面时,它显示如下内容:“Jenkins(1.521)的新版本可供下载(更改日志).”我觉得下载新的jar并在服务器中提取它不安全。
kxxlusnw1#
您指的是Jenkins CLI,还是您操作系统上的CLI?无法通过Jenkins CLI更新Jenkins版本。如果Jenkins是作为独立的WAR文件安装的,那么从命令行升级它所需要做的就是下载新的Jenkins WAR文件并替换当前的WAR文件,然后重新启动Jenkins。在升级之前备份$JENKINS_HOME目录的全部内容总是一个好主意。如果您使用的是原生软件包,如RPM或DEB,您应该使用Jenkins服务器上的软件包管理器(yum,apt-get等)来升级Jenkins。
sycxhyv72#
由于公认的答案并没有说明如何通过登录到服务器本身来升级Jenkins,我将添加如何在使用apt包管理器的服务器中进行升级。登录到服务器后,键入以下命令以列出所有可升级的软件包。
apt list --upgradable
您应该会得到如下输出:正在刊登...完成iproute 2/仿生学-更新4.15.0-2ubuntu1.3 amd 64 [可从以下版本升级:4.15.0-2ubuntu1.2] jenkins/二进制2.277.1全部[可从以下版本升级:2.263.4]如果Jenkins在输出列表中,只需使用以下命令运行升级即可:
apt upgrade jenkins
wsxa1bj13#
是的,我们可以通过CLI更新jenkins。请检查正在使用的jenkins.rpm$sudo rpm -q jenkins在我的例子中,它是jenkins-2.119-1.1.noarch。如果您没有jenkins.repo和jenkins密钥,则运行以下步骤$sudo yum install wget用于安装wget$sudo wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat-stable/jenkins.repo$sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key$sudo yum clean metadata这将删除未使用的过多和旧的元数据$sudo yum remove jenkins这将删除jenkins-2.119-1.1.noarch(旧版本rpm)。转到jenkins官方网站页面,然后复制url的rpm你想要的$wget https://get.jenkins.io/redhat/jenkins-2.380-1.1.noarch.rpm已下载所需的jenkins rpm软件包$ sudo rpm -i jenkins-2.380-1.1.noarch.rpm安装新的Jenkins转速$ sudo rpm -qa jenkinsjenkins-2.380-1.1.noarch$sudo systemctl enable jenkins$sudo systemctl start jenkins在这里,您可能会收到这种类型的错误“jenkins.service的作业失败,因为控制进程退出并返回错误代码。有关详细信息,请参见“systemctl status jenkins.service”和“journalctl -xe“”为此,我们必须将正在使用的Java版本更新为11或最新版本$sudo yum install fontconfig java-11-openjdk或$sudo yum install java-11-openjdk-devel$sudo update-alternatives --config java选择适当的java版本$sudo systemctl start jenkins
$sudo rpm -q jenkins
$sudo yum install wget
$sudo wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat-stable/jenkins.repo
$sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key
$sudo yum clean metadata
$sudo yum remove jenkins
$wget https://get.jenkins.io/redhat/jenkins-2.380-1.1.noarch.rpm
$ sudo rpm -i jenkins-2.380-1.1.noarch.rpm
$ sudo rpm -qa jenkins
$sudo systemctl enable jenkins
$sudo systemctl start jenkins
$sudo yum install fontconfig java-11-openjdk
$sudo yum install java-11-openjdk-devel
$sudo update-alternatives --config java
3条答案
按热度按时间kxxlusnw1#
您指的是Jenkins CLI,还是您操作系统上的CLI?无法通过Jenkins CLI更新Jenkins版本。
如果Jenkins是作为独立的WAR文件安装的,那么从命令行升级它所需要做的就是下载新的Jenkins WAR文件并替换当前的WAR文件,然后重新启动Jenkins。在升级之前备份$JENKINS_HOME目录的全部内容总是一个好主意。
如果您使用的是原生软件包,如RPM或DEB,您应该使用Jenkins服务器上的软件包管理器(yum,apt-get等)来升级Jenkins。
sycxhyv72#
由于公认的答案并没有说明如何通过登录到服务器本身来升级Jenkins,我将添加如何在使用apt包管理器的服务器中进行升级。
登录到服务器后,键入以下命令以列出所有可升级的软件包。
您应该会得到如下输出:
正在刊登...完成
iproute 2/仿生学-更新4.15.0-2ubuntu1.3 amd 64 [可从以下版本升级:4.15.0-2ubuntu1.2] jenkins/二进制2.277.1全部[可从以下版本升级:2.263.4]
如果Jenkins在输出列表中,只需使用以下命令运行升级即可:
wsxa1bj13#
是的,我们可以通过CLI更新jenkins。请检查正在使用的jenkins.rpm
$sudo rpm -q jenkins
在我的例子中,它是jenkins-2.119-1.1.noarch。如果您没有jenkins.repo和jenkins密钥,则运行以下步骤
$sudo yum install wget
用于安装wget
$sudo wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat-stable/jenkins.repo
$sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key
$sudo yum clean metadata
这将删除未使用的过多和旧的元数据
$sudo yum remove jenkins
这将删除jenkins-2.119-1.1.noarch(旧版本rpm)。转到jenkins官方网站页面,然后复制url的rpm你想要的
$wget https://get.jenkins.io/redhat/jenkins-2.380-1.1.noarch.rpm
已下载所需的jenkins rpm软件包
$ sudo rpm -i jenkins-2.380-1.1.noarch.rpm
安装新的Jenkins转速
$ sudo rpm -qa jenkins
jenkins-2.380-1.1.noarch
$sudo systemctl enable jenkins
$sudo systemctl start jenkins
在这里,您可能会收到这种类型的错误“jenkins.service的作业失败,因为控制进程退出并返回错误代码。有关详细信息,请参见“systemctl status jenkins.service”和“journalctl -xe“”为此,我们必须将正在使用的Java版本更新为11或最新版本
$sudo yum install fontconfig java-11-openjdk
或$sudo yum install java-11-openjdk-devel
$sudo update-alternatives --config java
选择适当的java版本
$sudo systemctl start jenkins