Jenkins 社区的网络基础设施都是架设在国外的服务器上,而且,并没有在国内有 CDN 或者负载均衡的配置。对所有的 Jenkins 用户而言,1500+的插件可以帮助他们解决很多问题。然而,我相信,对于国内的很多用户来说, 可能有过一些不太愉快的经历——插件下载速度很慢,甚至会超时。难道遇到这种情况下,我们就只能等吗?

程序员,作为天生懒惰的人,总是希望能通过手中的键盘来解决各种个样的问题。凭什么?下载一个插件, 我还的苦苦地等待来自美国的数据包呢?数数你手里的 Jenkins 都安装了多少个插件。30个算少的吧。经过一番搜索,发现果然已经有前人帮忙把大树种好了。让我们一起感谢“清华大学开源软件镜像站”提供的镜像服务:

https://mirrors.tuna.tsinghua.edu.cn/jenkins/

但是,当我兴冲冲地把 Jenkins 插件管理页面的更新中心的地址修改后,却发现了一个奇怪的情况,好像还是那么慢啊。不管是换地址,还是换4G,换电脑都解决不了这个网络排队的问题。本着开源的精神(不满意就提 issue 或者 Pull Request), 我只好继续挖掘这里的秘密。下面,是我向 TUNA 提的一个 issue(可以看到貌似我并不是第一个吐槽的人):

https://github.com/tuna/issues/issues/659

是的,rsync 可以帮我们把106G的文件同步过来,免去了出国下载插件的麻烦,可没有解决最后一公里的痛。

通过下面的 PR 我们可以大致了解到,Jenkins 是通过解析 update-center.json 文件的方式来获取插件版本, 以及下载插件的。另外,如果你认为只是修改下文件里的 URL 就能解决这个问题的话,那么,请再仔细想一下这个事情。既然小白兔可以把地址修改为一个比较方便的值,那么,大灰狼为啥不能往那些插件里加点辣椒水呢。Jenkins 作为一个在 CI/CD 领域里领先了15年之久的大叔,当然不会输给了一些小毛贼。简单来说呢,这个事情 是通过两把钥匙来解决的——官方用其中一把钥匙给文件做了签名,并保管起来;把另外一把钥匙对外公布(保存在发行版中)。只有通过了公钥验证的 update-center.json 文件,才会被使用到。

https://github.com/jenkins-infra/update-center2/pull/245

知道了问题所在,解决起来自然就容易了。Jenkins 中文社区帮大家把钥匙和地址的问题解决了,按图索骥三步走:

想了解技术细节?担心我们是大灰狼?我们欢迎喜欢学习的同学,更欢迎人民大众的检阅。提问题,提需求,提代码,提文档,都是可以的。实际上,我们的整套方案中,所有的部分(除了拿一把钥匙以外) 都是开源的,包括还不够完善的设计文档。而且,并不需要花一分钱,完全利用现有的计算、存储资源。此处,让我们再次感谢清华开源镜像站点、GitHub Actions、码云 Page 等。

https://github.com/jenkins-zh/mirror-adapter

最重要的事情,一定要在最后才说出来(不喜欢认真阅读文档的同学,对不起了)。想要体验极速 安装插件的同学,请认准 Jenkins 简体中文插件的版本:1.0.10

https://plugins.jenkins.io/localization-zh-cn

Jenkins 插件中心国内镜像源发布相关推荐

  1. Jenkins 安装和配置插件中心国内镜像源加快安装

    通过WAR文件 Jenkins的Web应用程序ARchive(WAR)文件版本可以安装在任何支持Java的操作系统或平台上. 要下载并运行Jenkins的WAR文件版本,请执行以下操作: 将最新的稳定 ...

  2. Jenkins插件配置国内镜像

    1.打开jenkins 默认访问路径 http://yourip:8080 2.解锁jenkins 3.配置国内镜像 在配置国内镜像前不要点击下图中的安装插件选项 注意:配置国内的镜像 官方下载插件慢 ...

  3. 持续集成之jenkins插件管理及镜像源替换

    jenkins本身未提供很多功能.可以通过使用插件来满足我们的需求.jenkins国外官方插件地址下载速度非常慢.所以可以修改为国内插件地址 1.替换国内插件下载地址 Jenkins > Man ...

  4. Eclipse配置国内镜像源

    1.说明 国内从官网下载Eclipse及插件非常慢, 没有特别的上网工具会很麻烦, 而且经常下载到一半失败了, 其实可以使用国内的镜像源替换官方源, 这些都是公开免费使用的, 下载速度还是比较快的, ...

  5. Ubuntu21.04设置国内镜像源

    一.Ubuntu版本和代号: Ubuntu可谓是Linux世界中的黑马,其第一个正式版本于2004年10月正式推出.需要详细解释的是Ubuntu版本编号的定义,其编号以"年份的最后一位.发布 ...

  6. 查看Ubuntu的版本号,并添加国内镜像源

    1.查看Ubuntu版本号 1.输入命令cat /proc/version显示如下Linux version 4.10.0-28-generic (buildd@lgw01-12) linux内核版本 ...

  7. docker 配置国内镜像源不起作用

    我用虚拟机测试的.不能拉取镜像 还报错:docker: Error response from daemon: Get https://registry-1.docker.io/v2/: net/ht ...

  8. 使用Docker国内镜像源

    操作环境:CentOS Linux release 7.6.1810 (Core) Docker 官方维护了一个公共仓库 Docker Hub,目前已有15,000+ 的镜像. 一般情况下,通过 do ...

  9. Linux安装指定版本的docker及添加国内镜像源

    一.安装指定版本docker 1. 下载deb文件 选择Ubuntu的deb文件 访问https://download.docker.com/linux/ubuntu/dists/ 来选择Ubuntu ...

  10. Mac下brew更换国内镜像源

    使用清华镜像源 官方使用说明 在终端一次运行如下每一行代码 git -C "$(brew --repo)" remote set-url origin https://mirror ...

最新文章

  1. linux sed第一列参数,linux sed笔记
  2. python 水位_一种适用于利用图像识别水位的水位尺的制作方法
  3. boot jpa mysql postman spring_听说过spring-data-jdbc么?来个最佳实践
  4. 计算机课程大作业答案,计算机接口技术课堂大作业(1)参考答案
  5. 数据结构与算法 总结
  6. Standard C Library - 思维火花 - 博客频道 - CSDN.NET
  7. 【Alpha】Daily Scrum Meeting——Day2
  8. paip.c#使用匿名函数建立委托提高可读性
  9. 高通工具QXDM、QCAT和QPST的使用
  10. 计算机职业规划作文1000字左右,职业生涯规划_1000字
  11. 企业微信机器人python脚本执行报错-‘errcode‘: 40008, ‘errmsg‘: ‘Warning: wrong json format. invalid message type
  12. 【Hadoop学习笔记】大数据框架原理及主要工具概述
  13. 搜狗输入法5.0正式版发布 首创云计算输入
  14. 宇视摄像机/硬盘录像机等设备接入到国标GB28181协议视频平台EasyGBS的注意事项
  15. Spreadsheet电子表格控件安装及用法总结
  16. udisk2阻止自动Mount某些设备
  17. 大数据信息资料采集:阿里巴巴1688电商网站货源产品信息采集
  18. MySQL 技术内幕——存储引擎
  19. 老鼠繁殖问题(老鼠有死亡)
  20. Odoo开发应该怎么学习?

热门文章

  1. 必看!云桌面与传统PC六项成本对比
  2. Oliver的救援 题解
  3. postgreSql版的occurs函数
  4. Mybatis|CURD|配置详解|注解开发|多点查询|动态sql|缓存
  5. 读研究生的目的之我见
  6. 在DX12中使用imgui 鼠标响应问题的解决
  7. 设计模式(创建型模式)-抽象工厂模式
  8. 只有一个源视频的Deepfakes简介
  9. 1.3版走迷宫小游戏(C++)
  10. effect和watch 的区别详解