如何创建公共Jenkins更新站点的本地镜像



我们在一台无法访问互联网的服务器上运行Jenkins(即使是通过代理)。安装并保持Jenkins安装的最新状态是一件痛苦的事!

我的想法是通过一个可以访问互联网的Windows工作站,制作一个詹金斯公共更新网站的本地镜像。然后通过NFS共享将此本地镜像提供给Jenkins。

所以我的问题是:如何制作本地镜像?你有更好/更简单的想法来保持詹金斯的安装是最新的吗?

为了生成更新站点(update-center.json),您可以使用https://github.com/jenkins-infra/backend-update-center2项目

我的步骤:

  1. 生成自签名证书
openssl genrsa-out your-update-center.key 1024openssl req-new-x509-days 1095-键入您的更新中心.key-out your更新中心.crt
  1. 将所有插件放入您的Nexus 2 maven存储库
  2. 克隆并回建update-center2项目
  3. 生成update-center.json
mvn-exec:java-Dexec.args="-id-default-h/dev/null-o更新center.json-存储库ULR_TO_NEXUS_REPO-remoteIndex.index.nextus-maven-repository-index.gz-repositoryName YOUR_REPO_NAME-directLink-peary-nowiki-key your-update-center.key-证书更新中心.crt-根证书您的更新中心.crt"
  1. 发布您的update-center.json。必须可以通过http/https访问
  2. 将生成的update-center.crt复制到JENKINS_HOME/update-centerrootCA文件夹
  3. "詹金斯→插件管理→先进的→更新站点"定义已发布的Update-center.json的链接

PS。不要忘记生成并发布Nexus 2 nextus-maven-repository-index.gz索引文件。为此,请使用"发布索引"任务。

有关更新程序中心的其他信息,请访问https://github.com/ikedam/backend-update-center2/wiki/How-to-create-your-own-Jenkins-Update-Center

手动下载war文件、停止服务器、替换war并重新启动服务器的问题在哪里?插件也是如此。

如果我仔细想想,可能有更好的方法,在一个可以访问互联网的系统上安装一个沙盒詹金斯。您可以使用UI更新服务器,然后可以彻底测试更新后的Jenkins。完成后,您只需要将war和hpi文件复制到您的"生产"Jenkins。现在,您甚至有了一个很好的流程和QA。

最新更新