本文主旨
看到好多加速Jenkins安装插件速度的文章,大多数教程中都是在插件配置里使用
https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json
替换原来的官方的json,我们来看看清华源拉下来的是什么 这里使用官方的下载插件的url全局搜索
这里我们发现,每个插件下载路径依旧没有改变,变的只是这个json是从清华源下来的,其内写死的插件下载地址是没有变的,还是从官网下载!
所以无论是更换还是没更换镜像json,下载插件的速度其实是没有变的!这真是令人心痛!💔
所以本文的目的在于:真正加速Jenkins安装插件的速度,减少失败率!
操作步骤
以上的配置Json其实在Jenkins的工作目录中,提供三种方式加速插件安装,第1、2种本质是一样的,第3种适合当前所有版本!
第一种方式:使用vim
方式:通过Vim对Jenkins启动后从官方地址下载的default.json修改,需要先等default.json下载完成才能进行
$ cd ${JENKINS_HOME}/updates #进入更新配置位置
$ vim default.json #这个Json文件与上边的配置文件是相同的
这里wiki和github的文档不用改,我们就可以成功修改这个配置
使用vim的命令,如下,替换所有插件下载的url
:1,$s/http:\/\/updates.jenkins-ci.org\/download/https:\/\/mirrors.tuna.tsinghua.edu.cn\/jenkins/g
替换连接测试url
:1,$s/http:\/\/www.google.com/https:\/\/www.baidu.com/g
进入vim先输入
:
然后再粘贴上边的:
后边的命令,注意不要写两个冒号!
修改完成保存退出:wq
第二种方式:使用sed
方式:通过 sed
命令对 Jenkins 启动后从官方地址下载的 default.json
修改,需要先等 default.json
下载完成才能进行
$ cd ${JENKINS_HOME}/updates #进入更新配置位置
$ sed -i 's#http://updates.jenkins-ci.org/download#https://mirrors.tuna.tsinghua.edu.cn/jenkins#g' default.json && sed -i 's#http://www.google.com#https://www.baidu.com#g' default.json
这是直接修改的配置文件,如果前边 Jenkins 用
sudo
启动的话,那么这里的两个sed
前均需要加上sudo
第三种方式:下载一份update-center.json,手动修改后放到本地web服务器中
方式:提前准备好修改后的update-center.json,代替 default.json 发挥作用,无需等官方 default.json
下载
cd $JENKINS_HOME
curl -Lo update-center.json https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json
sed -i 's#http://updates.jenkins-ci.org/download#https://mirrors.tuna.tsinghua.edu.cn/jenkins#g' update-center.json && sed -i 's#http://www.google.com#https://www.baidu.com#g' update-center.json
#安装Nginx
sudo apt install nginx -y
#移动配置到nginx默认web目录
sudo mv update-center.json /var/www/html/
#修改Jenkins配置文件
sed -i "s#http://本地Nginx-IP/update-center.json#https://updates.jenkins.io/update-center.json#g" hudson.model.UpdateCenter.xml
重启Jenkins,安装插件试试,简直超速!!
原理
之前刚写本文时流程是 Jenkins 启动后,会通过 hudson.model.UpdateCenter.xml
中的 url 下载 update-center.json
将 id
设置成 json
的名称放入 updates
目录中,当 updates/default.json
生成后,就不再更新它。
修改方式1与2就是通过修改其下载后的 updates/default.json
解决问题。然而现在情况变了,新版本Jenkins(2.272实测,其它版本请自测)不再将update-center.json放入updates目录中了,所以后续版本推荐第三种方式。
结束
自从发现这个办法后,妈妈再也不用担心 Jenkins插件下载速度慢、安装失败了!
最后更新日期:2020-12-24 11:58 AM
本文系Hellxz学习与实践文章,禁止布布扣、码迷、爱码网等第三方爬虫网站爬取,转载请在醒目位置注明出处:https://www.cnblogs.com/hellxz/p/jenkins_install_plugins_faster.html