Jenkins 2.164.3 安装插件(当前官网正式版本: 2.440.3 LTS)

Jenkins 2.164.3安装插件

    • [1. 安装jenkins](#1. 安装jenkins)
      • [1.1 宿主机安装](#1.1 宿主机安装)
      • [1.2 docker安装(linux)](#1.2 docker安装(linux))
    • [2. 登录jenkins](#2. 登录jenkins)
    • [3. 修改配置文件](#3. 修改配置文件)

这篇文章如果放在5、6年前写出来毫无意义,因为安装2.164.3之后,推荐的插件即可自动安装。但是在2024年,当前正式版本是2.440.3 LTS,您会发现如果安装2.164版本的jenkins无法更新插件,或者提示升级本地jenkins。但笔者的服务器只能安装java8,所以只能使用java8支持的最后版本2.164.3

笔者尝试过手动安装插件,但是因为各种依赖,各种插件版本不匹配,被折磨的死去活来,也尝试更新源,但是java -jar jenkins.war这种方式未起作用。最后笔者整理了一套插件安装方法,欢迎使用及指摘。

1. 安装jenkins

1.1 宿主机安装

这里系统不区分windows还是linux

前往https://get.jenkins.io/war-stable/2.164.3/进行下载war包

运行java -Dhudson.model.DownloadService.noSignatureCheck=true -jar jenkins.war --httpPort=8081

其中-Dhudson.model.DownloadService.noSignatureCheck=true是跳过网站认证,--httpPort=8081修改端口

1.2 docker安装(linux)

前往 https://hub.docker.com/r/jenkins/jenkins/tags 挑选版本,用docker pull jenkins/jenkins:2.164.3下载镜像

运行容器

bash 复制代码
docker run -itd -p 8080:8080 -p 50000:50000  jenkins/jenkins:2.164.3

2. 登录jenkins

不同的安装方式,根据不同的提示寻找密码

整活的地方来了,输入密码会提示安装插件,由于jenkins版本太旧,所以一个插件也安装不了,即使是推荐的

跳过插件安装,设置登录用户,这里笔者设置的是admin

登录完成,看起来很正常,但要创建任务会发现

是的,只能创建最基本的任务,而且进入之后很多功能都没有

3. 修改配置文件

由于笔者服务器环境安装的是java8,并且无法升级,所以笔者只能使用java8支持的最新版本jenkins2.163,所以常规操作需要更新Update SiteSubmit

这里整活的地方来了,像一些知名网站里面的2.164的插件更新文件对应的并不是正确的版本,并且错的内容也相同,也不知道谁snyc的谁
https://mirrors.tuna.tsinghua.edu.cn/jenkins/plugins/
http://mirror.esuni.jp/jenkins/updates/

所以怎么办呢,碰碰运气,笔者又翻了几个文件,发现stable-2.107更新文件对应的是2.164.3版本,还好还好,如果找不到那真的会很糟糕
http://mirror.esuni.jp/jenkins/updates/stable-2.107/update-center.json

以为这就解决了?这里把这个文件配上,仍然无法安装插件

bash 复制代码
java.io.IOException: Downloaded file /root/.jenkins/plugins/powershell.jpi.tmp does not match expected SHA-256, expected 'Qvw4t26HeGBJjh+BdpoubJc1acASVQAkB9FQtA4kxdw=', actual 'FYwl/yh2jivRErMn+VPX5douxVJGy8Tn0K6LFw0eTLc='
	at hudson.model.UpdateCenter.throwVerificationFailure(UpdateCenter.java:2025)
	at hudson.model.UpdateCenter.verifyChecksums(UpdateCenter.java:2060)
	at hudson.model.UpdateCenter$InstallationJob.replace(UpdateCenter.java:2239)
	at hudson.model.UpdateCenter$UpdateCenterConfiguration.install(UpdateCenter.java:1343)
	at hudson.model.UpdateCenter$DownloadJob._run(UpdateCenter.java:1872)
	at hudson.model.UpdateCenter$InstallationJob._run(UpdateCenter.java:2153)
	at hudson.model.UpdateCenter$DownloadJob.run(UpdateCenter.java:1843)
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at hudson.remoting.AtmostOneThreadExecutor$Worker.run(AtmostOneThreadExecutor.java:118)
	at java.lang.Thread.run(Thread.java:748)

什么原因呢?

大概是官网插件的SHA-256码和清华源的不一致,至于为什么不一致,笔者也无从得知了

接下来,需要将环境中的default.json中的官网网址改为清华源的,笔者这里以docker为例

bash 复制代码
/var/jenkins_home/updates/default.json

修改updates文件夹中的 default.json文件

  • 替换文件中所有http://updates.jenkins-ci.org/download https://mirrors.tuna.tsinghua.edu.cn/jenkins

  • 替换http://www.google.com http://www.baidu.com

注意前面在Update Site中点了Submit后,会在updates目录中生成default.json,也可以把 jenkins 数据目录中的hudson.model.UpdateCenter.xml值为:http://mirror.esuni.jp/jenkins/updates/stable-2.107/update-center.json

到这里重启下jenkins或者http:localhost:8080/reload都可以了,再更新插件就可以了

相关推荐
嘤嘤怪呆呆狗1 分钟前
【开发问题记录】使用 Docker+Jenkins+Jenkins + gitee 实现自动化部署前端项目 CI/CD(centos7为例)
前端·vue.js·ci/cd·docker·gitee·自动化·jenkins
张某人想退休4 分钟前
Postman最新接口自动化持续集成
自动化·jenkins·postman
lifeng432110 小时前
Jenkins集成部署(图文教程、超级详细)
运维·jenkins
无所不在的物质11 小时前
Jenkins基础教程
运维·云原生·自动化·jenkins
喝醉酒的小白19 小时前
ElasticSearch 的核心功能
大数据·elasticsearch·jenkins
只会copy的搬运工1 天前
Jenkins持续集成部署——Jenkins实战与运维(2)
jenkins
花姐夫Jun1 天前
在 CentOS 8 系统上安装 Jenkins 的全过程
linux·centos·jenkins
INFINI Labs1 天前
Elasticsearch filter context 的使用原理
大数据·elasticsearch·jenkins·filter·querycache
baihb10241 天前
Jenkins 构建流水线
运维·jenkins
VinciYan1 天前
基于Jenkins+Docker的自动化部署实践——整合Git与Python脚本实现远程部署
python·ubuntu·docker·自动化·jenkins·.net·运维开发