外掛安裝失敗
通常要下載國外的軟體外掛之類的時候,連結到國外會太慢或者被牆,這就需要我們去換映象源
修改配置檔案
- 我們在jenkins裡更改升級站點的url後
- 若安裝外掛時還是一直卡在“安裝/更新外掛中”,則需修改配置檔案
原因
原文連結:https://blog.csdn.net/JikeStardy/article/details/105606150
映象源的用途理解起來很簡單:就是第三方團體、組織使用他們自己的伺服器對國外官方源上的檔案、資料進行同步。這樣當我們需要下載使用這些檔案時就不用慢慢從國外的伺服器獲取,而是直接通過國內的網路獲取他們早早同步好的檔案。所以我們能夠看到在配置一些環境、軟體時都有換源一說。
- 在各個開源映象站中,比如清華源,檢視Jenkins的update-center.json,能有如下發現
- 標紫色的部分是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,來判斷網路是否連通。谷歌的網站在大陸是連不上的,所以會出現這個問題。
再全域性替換 https://updates.jenkins.io/download/ --> https://mirrors.tuna.tsinghua.edu.cn/jenkins/
命令列操作
sed -i 's#https://updates.jenkins.io/download#https://mirrors.tuna.tsinghua.edu.cn/jenkins#g' {你的Jenkins工作目錄}/updates/default.json
sed -i 's#http://www.google.com#https://www.baidu.com#g' {你的Jenkins工作目錄}/updates/default.json
儲存後重啟jenkins
坑點
-
網上很多很多教程都是更改配置檔案中的
http://updates.jenkins-ci.org/download
如果直接用
sed
命令替換,不會報錯,但也不會成功換源,為什麼呢?
- 我們開啟配置檔案,查詢該連結,發現根本查無此文
-
而仔細觀察,配置檔案裡的連結是這樣的
https://updates.jenkins.io/download/
而不是下面這樣的
http://updates.jenkins-ci.org/download
http
變成了https
-ci.org
變成了.io
-
再次更換連結,成功
- 事故原因不明,有可能你的配置檔案就是這種格式
http://updates.jenkins-ci.org/download
,所以請仔細檢查
沒有配置檔案
參考自https://www.cnblogs.com/hellxz/p/install_jenkins.html
假若沒有找到updates
檔案,那麼可能是你的網路連不到Jenkins官方倉庫上,是不會生成updates目錄的,解決方式也簡單
執行如下命令,重啟Jenkins,再檢視updates資料夾是否生成,生成即可執行上邊的命令外掛安裝加速了
sed -i "s#https://updates.jenkins.io/update-center.json#https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json#g" {你的Jenkins工作目錄}/root/hudson.model.UpdateCenter.xml
配置代理伺服器
-
假若上面的操作仍然不行,那麼就去搭代理伺服器
啟動
./{你下載的clash} -d .
在網站獲取yaml配置資訊,覆蓋本地clash的配置
登入 http://clash.razord.top/ 選擇節點
登入 www.youtube.com 檢驗是否成功
返回jenkins檢視是否成功
-
若還是不行,執行下面兩條命令
export http_proxy="http://127.0.0.1:你的vpn埠號"
export https_proxy="http://127.0.0.1:你的vpn埠號"
- 還是不行?我沒轍了,只能幫你到這了,加油!