背景
学习Jenkins过程中,插件是Jenkins命脉,下载插件可以手动去官网下载,同时国内清华源也提供下载,当然国内速度快。
可是人总有那么点倔强或者是洁癖,明明可以点点鼠标,抽根烟的功夫就能完美的部署好。干嘛要去打开web、查找、下载、上传,重启Jenkins。所有都在找加速方法,我也不例外(洁癖)。
解决的方法百度出来的大多都是升级站点,然后就没然后了,可是大家都发现还是加速不了,一片红,头疼。其实做完这步还只是个半成品,得做第二步。好了入正题。
第一步:升级站点
我是搬运工
清华源
https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json
1.进入jenkins系统管理
2.进入插件管理(Manage Plugins)——高级——升级站点
第二步
使用nginx反向代理,其原理,就是欺骗一下Jenkins,让他走国内源下载插件
1.修改主机hosts
vim /etc/hosts
127.0.0.1 mirrors.jenkins-ci.org
为啥是这个地址呢:mirrors.jenkins-ci.org;
答案:必须是这个地址。
2. 安装nginx
yum -y install nginx
查看一下nginx主要目录,哇塞好多。下面列出要用到目录
rpm -ql nginx
/etc/nginx/nginx.conf # 主配置文件
/var/log/nginx/ # log日志目录
/etc/nginx/conf.d/ # 虚拟主机目录
3.修改nginx主配置文件
#复制执行
cat >/etc/nginx/nginx.conf <EOF
worker_processes 1;
error_log /var/log/nginx/error.log error;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
include conf.d/*.conf;
EOF
4.添加虚拟配置文件
#复制执行
cat >/etc/nginx/conf.d/mirrors.jenkins-ci.org.conf <"EOF"
server
{
listen 80;
server_name mirrors.jenkins-ci.org;
location / {
proxy_redirect off;
proxy_pass https://mirrors.tuna.tsinghua.edu.cn/jenkins/;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Accept-Encoding "";
proxy_set_header Accept-Language "zh-CN";
}
index index.html index.htm index.php;
location ~ /\.
{
deny all;
}
access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log;
}
EOF
5.启动nginx
systemctl start nginx
systemctl enable nginx
6.重启Jenkins
systemctl restart jenkins
收工!!!
其他方案
(1)替换法
可以用但重启Jenkins被恢复原样。
直接把步骤1的地址下载下来放到本地,修改里面的地址,然后本地启动个服务跑起来,在升级站点写成自己网站的json文件。 打开 https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json 发现插件的地址都是外国,只要把外国的地址成功清华对应的地址即可,批量修改。
如何替换请参考:https://blog.csdn.net/JikeStardy/article/details/105606150
(2)启动参数法
java学艺不精没成功。请大神不吝赐教。
转载,请参考
https://jenkins-update.davidz.cn/
(3)apcahe代理法
基本原理与nginx代理一样,但没实验过,请自行测试。
1.host 添加 解析 127.0.0.1 updates.jenkins-ci.org
2.本地 apache 服务器 反向代理
listen 80
<VirtualHost *:80>
SSLProxyEngine on
ProxyPass "/download/plugins" "https://mirrors.tuna.tsinghua.edu.cn/jenkins/plugins/"
</VirtualHost>
(4)中文社区提供
转载,请参考
https://www.jianshu.com/p/2f763516bd5e