Jenkins插件安裝失敗

插件安裝失敗

通常要下載國外的軟體插件之類的時候,鏈接到國外會太慢或者被牆,這就需要我們去換鏡像源

修改配置文件

  • 我們在jenkins里更改升級站點的url後

image-20210803225503954

  • 若安裝插件時還是一直卡在「安裝/更新插件中」,則需修改配置文件

原因

原文鏈接://blog.csdn.net/JikeStardy/article/details/105606150

鏡像源的用途理解起來很簡單:就是第三方團體、組織使用他們自己的伺服器對國外官方源上的文件、資料進行同步。這樣當我們需要下載使用這些文件時就不用慢慢從國外的伺服器獲取,而是直接通過中國的網路獲取他們早早同步好的文件。所以我們能夠看到在配置一些環境、軟體時都有換源一說。

  • 在各個開源鏡像站中,比如清華源,查看Jenkins的update-center.json,能有如下發現

image-20210802182845914

  • 標紫色的部分是Jenkins官方的源,而上面的內容來自清華的鏡像源中的update-center.json文件,Jenkins應該是根據升級站點的地址獲取到update-center.json,而真正指向更新資源 (比如插件本體、Jenkins本體等) 的url鏈接都在update-center.json中。
  • 所以換了升級站點的url之後,Jenkins還是會根據update-center.json中的鏈接去下載,因為中國鏡像源上的update-center.json = Jenkins官方源上的update-center.json
  • 接下來就要去修改本地配置文件中的url

配置文件地址:

{你的Jenkins工作目錄}/updates/defaulet.json

(一般是 /var/lib/jenkins)

替換 www.google.com –> www.baidu.comjenkins

在安裝插件前總是嘗試連接www.google.com,來判斷網路是否連通。Google的網站在大陸是連不上的,所以會出現這個問題。

再全局替換 //updates.jenkins.io/download/ –> //mirrors.tuna.tsinghua.edu.cn/jenkins/

命令行操作

sed -i 's#//updates.jenkins.io/download#//mirrors.tuna.tsinghua.edu.cn/jenkins#g' {你的Jenkins工作目錄}/updates/default.json
sed -i 's#//www.google.com#//www.baidu.com#g' {你的Jenkins工作目錄}/updates/default.json

保存後重啟jenkins

坑點

  • 網上很多很多教程都是更改配置文件中的

    //updates.jenkins-ci.org/download

    如果直接用sed命令替換,不會報錯,但也不會成功換源,為什麼呢?

image-20210802184106148

  • 我們打開配置文件,查找該鏈接,發現根本查無此文

image-20210802182924734

  • 而仔細觀察,配置文件里的鏈接是這樣的

    //updates.jenkins.io/download/

    而不是下面這樣的

    //updates.jenkins-ci.org/download

    http變成了https

    -ci.org變成了.io

  • 再次更換鏈接,成功

image-20210803092355548

  • 事故原因不明,有可能你的配置文件就是這種格式//updates.jenkins-ci.org/download,所以請仔細檢查

沒有配置文件

參考自//www.cnblogs.com/hellxz/p/install_jenkins.html

假若沒有找到updates文件,那麼可能是你的網路連不到Jenkins官方倉庫上,是不會生成updates目錄的,解決方式也簡單
執行如下命令,重啟Jenkins,再查看updates文件夾是否生成,生成即可執行上邊的命令插件安裝加速了

sed -i "s#//updates.jenkins.io/update-center.json#//mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json#g" {你的Jenkins工作目錄}/root/hudson.model.UpdateCenter.xml

配置代理伺服器

  • 假若上面的操作仍然不行,那麼就去搭代理伺服器

    下載安裝clash

    啟動 ./{你下載的clash} -d .

    購買代理伺服器節點服務

    在網站獲取yaml配置資訊,覆蓋本地clash的配置

    登錄 //clash.razord.top/ 選擇節點

    登錄 www.youtube.com 檢驗是否成功

    返回jenkins查看是否成功

  • 若還是不行,執行下面兩條命令

export http_proxy="//127.0.0.1:你的vpn埠號"
export https_proxy="//127.0.0.1:你的vpn埠號"
  • 還是不行?我沒轍了,只能幫你到這了,加油!