Jenkins中安装Credentials Binding插件实现凭证管理与安装Git插件和拉取代码构建项目
場景
CentOS中Jenkins的下載、安裝、配置與啟動(圖文教程):
https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/116490738
在上面將jenkins安裝配置好之后。
要在Jenkins使用憑證管理功能,需要安裝Credentials Binding插件
注:
博客:
https://blog.csdn.net/badao_liumang_qizhi
關注公眾號
霸道的程序猿
獲取編程相關電子書、教程推送與免費下載。
實現
在系統管理-插件管理-可選插件中搜索
Credentials Binding
然后點擊Install without restart
在安裝過程中會讓你安裝多個插件,確保每個插件都能安裝成功才行。
這里是已經安裝完成。
?
所以就不會在可選插件中搜索到,而是在已安裝中搜索到。
這里六個插件都是安裝上面那一個插件所帶的。
?
安裝成功之后就可以在Dashboard中找到Manage Credentials
?
點擊全局
?
在全局憑證中點擊添加一些憑證
?
這里可以選擇憑證類型,可以添加的憑證類型為5種
Username with password :用戶名和密碼
SSH Username with private key : 使用SSH用戶和密鑰
Secret file :需要保密的文本文件,使用時Jenkins會將文件復制到一個臨時目錄中,再將文件路徑
設置到一個變量中,等構建結束后,所復制的Secret file就會被刪除。
Secret text :需要保存的一個加密的文本串,如釘釘機器人或Github的api token
Certificate :通過上傳證書文件的方式
常用的使用用戶名和密碼的方式以及使用SSH和秘鑰的方式。
使用用戶名和密碼的方式
選擇類型為Username with password
然后下面輸入你的gitlab的用戶名和密碼,點擊確定
?
那么就可以在全局憑證中看到添加后的憑證了
?
安裝Git插件和Git工具
為了讓Jenkins支持從Gitlab拉取源碼,需要安裝Git插件以及在Jenkins所在的CentOS服務器上安裝Git工具。
在系統管理-插件管理-可選插件中搜索Git,并勾選中后點擊Install without restart
?
然后在CentOS中安裝Git可以參照
CentOS中通過編譯源碼包的方式安裝Git:
https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/116704345
驗證憑證管理拉取代碼
安裝完Git插件和Git之后,在Jenkins中創建一個任務
?
然后找到配置-源碼管理-Git,在Responsitory中復制Gitlab的項目的Http的地址
注意這里是Http地址,不能是SSH地址
然后再下面的Credentials選擇上面添加的憑證。
?
這一步可能會出現如下問題
Jenkins中連接Git倉庫時提示:error: The requested URL returned error: 401 Unauthorized while accessing
https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/116708668
Jenkins中連接Git倉庫時提示:無法連接倉庫:Error performing git command: git ls-remote -h
https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/116711146
?然后點擊Build Now
?
然后左下角就會顯示構建歷史,點擊最新的一次,從查看控制臺輸出
?
可以看到已經成功從Gitlab將代碼拉取到了Jenkins中
可以到Jenkins服務器中查看
cd /var/lib/jenkins/workspace然后
ls
?
SSH憑證管理的方式
在Jenkins服務器中使用root賬戶生成公鑰和私鑰
首先設置在Jenkins所在的服務器上給git設置下身份的名字和郵箱
git config --global user.name "yourname" git config --global user.email "your@email.com "注:yourname是你要設置的名字,your@email 是你要設置的郵箱。
ssh-keygen -t rsa -C "your@email.com "(請填你設置的郵箱地址)然后一路回車,直到在 /root/.ssh目錄下生成私鑰和公鑰
?
到生成的目錄下
cd /root/.ssh ls然后將id_rsa.pub公鑰的內容復制到GitLab中root賬戶登錄-頭像-Settings
-SSH Keys。復制剛才id_rsa.pub文件的內容到這里,點擊"Add Key"
?
然后在Jenkins中,添加憑證
?
選擇類型為SSH Username with pricate key
把剛才生成私有文件內容復制過來
?
?
注意這里的私鑰的內容一定要復制完全了,包括收尾的兩行begin和end
?
如果復制不全的話會提示權限不足被拒絕
Please make sure you have the correct access rights and the repository exist
?
然后新建項目-源碼管理-Git,這次填寫倉庫的URL時直接填寫項目倉庫的ssh地址,然后憑證選擇上面新建的憑證。
?
然后點擊這個項目的構建項目一樣能構建成功。
?
總結
以上是生活随笔為你收集整理的Jenkins中安装Credentials Binding插件实现凭证管理与安装Git插件和拉取代码构建项目的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Jenkins中连接Git仓库时提示:无
- 下一篇: Windows中获取Redis指定前缀的