目錄
- 傳送門
- 前言
- 一、Jenkins插件管理
- 1、更換為國內下載源
- 2、中文漢化插件下載(不推薦)
- 3、低版本Jenkins爆紅插件安裝
- 4、低版本Jenkins插件持續報錯解決辦法
- 二、Jenkins用戶角色
- 三、Jenkins憑證管理(svn/git)
- 1、Username with password方式(推薦)
- 2、SSH Username with private key方式
傳送門
SpringMVC的源碼解析(精品)
Spring6的源碼解析(精品)
SpringBoot3框架(精品)
MyBatis框架(精品)
MyBatis-Plus
SpringDataJPA
SpringCloudNetflix
SpringCloudAlibaba(精品)
Shiro
SpringSecurity
java的LOG日志框架
Activiti(敬請期待)
JDK8新特性
JDK9新特性
JDK10新特性
JDK11新特性
JDK12新特性
JDK13新特性
JDK14新特性
JDK15新特性
JDK16新特性
JDK17新特性
JDK18新特性
JDK19新特性
JDK20新特性
JDK21新特性
其他技術文章傳送門入口
前言
承接 Jenkins安裝啟動(JDK8/11/17)一文,
以CentOS7上面的支持JDK8的Jenkins2.346-1的LTS版本和支持JDK17的Jenkins 2.440.1的LTS版本綜合介紹Jenkins的一些配置
下面文章不定期更新中。。。
Linux安裝JDK17
Linux安裝MySQL
Linux安裝Nginx
Linux安裝Maven
運行一個jar包
Jenkins安裝啟動(JDK8/11/17)
Jenkins配置(插件/角色/憑證)
Jenkins的jdk和maven配置
Jenkins三種構建類型
一、Jenkins插件管理
插件是非常重要的一個設置。下面案例默認以支持JDK17的Jenkins 2.440.1為主(英文版本)。有不一樣的地方,會特別標注提示是支持JDK8的Jenkins2.346-1(漢化版本)。
1、更換為國內下載源
第一步:
將上圖的https://updates.jenkins.io/update-center.json 更換為國內的地址
https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json
點擊submit。
備注:這里表示后面更新插件,都是從國內這個地址更新了,速度非常快。
第二步:
下面操作的就是下載插件,都從國內地址下載。
cd /var/lib/jenkins/updates # 進入這個目錄,找到default.json文件
建議通過xftp等工具,把default.json文件拖出來修改。修改完再拖回去。先備份一個default-backup.json出來,避免改錯,方便還原。
筆者這邊用notepad++打開拖出來的default.json文件(就是在自己window電腦上面改,用記事本也可以ctrl+f批量替換)。主要批量替換三句話,下面三句哪個有,就替換哪個,都做一次批量替換。
updates.jenkins-ci.org/download 替換為mirrors.tuna.tsinghua.edu.cn/jenkins updates.jenkins.io/download 替換為mirrors.tuna.tsinghua.edu.cn/jenkinswww.google.com 替換為 www.baidu.com
筆者這邊主要替換了第二句和第三句。不同Jenkins版本情況不同。(有些Jenkins是替換第一句和第三句,比如Jenkins的一些老版本,支持JDK8的那種版本)
將修改后的default.json文件重新傳到服務器的/var/lib/jenkins/updates目錄下,覆蓋原來的。
然后Jenkins請求地址/restart可以重啟jenkins,也可以服務器指令重啟
#重啟jenkins
systemctl restart jenkins
2、中文漢化插件下載(不推薦)
建議還是習慣英文的操作界面,像idea一樣,換成漢化的idea總感覺怪怪的。當然這里面的中文漢化插件可以先下載,然后不想用關閉就可以了。
Dashboard->Manage Jenkins->Plugins->Available plugins,搜索"Chinese",下載重啟即可。
截圖沒有查詢出,是因為筆者已經安裝過了。在Installed plugins里面可以看到。
注意:支持JDK8的Jenkins2.346-1版本是在Jenkins->Manage Jenkins->Manage Plugins,點擊Available,搜索"Chinese",下載重啟即可。
兩個版本的操作界面是不一樣的,但是原理基本都是大同小異的。所有插件要生效,最好是重啟一次jenkins,也可以多個插件批量下載以后,最后再重啟Jenkins。
3、低版本Jenkins爆紅插件安裝
支持JDK8的Jenkins2.346-1版本會發現很多插件爆紅,直接在插件管理里面批量勾選大量爆紅需要安裝的插件即可。因為之前訪問頁面的時候選擇的無(最開始沒有選擇安裝插件),所以很多插件其實都沒有安裝上。
4、低版本Jenkins插件持續報錯解決辦法
http://updates.jenkins-ci.org/download/plugins/
這個地址里面 ctrl+f 找一直報錯的插件,然后上傳插件
下載Jenkins的插件的地址(官方可找低版本插件兼容):https://plugins.jenkins.io/
例如:Credentials插件解決案例,先解決一些重要的插件,有依賴關系。
找差不多版本,可以點到checksums這個單詞,可以參考,不能太老,不能太新。一年一年往下降。
參考版本,注意是Jenkins上傳插件,不是直接從xftp拖過去的哈
下面是筆者總結的 支持JDK8的Jenkins2.346-1版本對應插件的一些版本
查找順序
Trilead API
版本1.57.v6e90e07157e1
SSH Credentials (多個)
版本1.19
Mina SSHD API :: Core
版本2.8.0-21.v493b_6b_db_22c6
Mailer
版本414.vcc4c33714601
JSch dependency
版本0.1.55.2
Git
版本4.11.3
Git server
版本1.9
GitHub
版本1.30.0
低版本Jenkins插件這塊配置是非常麻煩的。但是沒辦法,如果公司是JDK8的項目,只能用低版本Jenkins。高版本Jenkins插件這塊都沒有這么麻煩了,非常清爽。尤其是最新的LTS版本,不過最新的LTS版本是不支持JDK8項目的。感慨技術的更新呀,以前是JDK版本一更新,大家就是看看,心態就是你發任你發,我用java8。現在隨著Spring6、SpringBoot3、Swagger、Jenkins的最新版本都紛紛拋棄java8,JDK8再也不那么受歡迎了。很多新的java項目,優先考慮JDK17了。JDK11在中間才尷尬,建議大家一鼓作氣升級到JDK17。JDK17默認的ZGC垃圾回收器實在是太好,性能方面吊打JDK8,新增的很多特性很有優點。
二、Jenkins用戶角色
Jenkins默認是有用戶的,但是角色沒有,還是需要下載插件來支持。插件真的是強大呀。
參考上面中文漢化插件下載,搜索Role
涉及到插件,一定要重啟Jenkins,重啟才會生效。上面的勾上,會自動重啟的。
重啟后安全版塊還是兩個
點擊第一個Security進入設置
保存后再看安全版塊,會發現多出一個小版塊
多了一個版塊
Global roles(全局角色):管理員等高級用戶可以創建基于全局的角色
Project roles(項目角色):針對某個或者某些項目的角色
Slave roles(節點角色):節點相關的權限
英文版本看著不是那么明確,看下漢化版本(筆者的支持JDK8的Jenkins2.346-1為漢化版本)
測試增加一個zangtie賬號,讀者可以根據自己需要做具體的測試
三、Jenkins憑證管理(svn/git)
思路依然是下載插件。
第三方交互的時候需要賬號密碼之類的,下載Credentials Binding插件,svn和git插件分別下載安裝重啟(不擴展單詞,就是subversion和git)
可以添加的憑證有5種:
Username with password:用戶名和密碼
SSH Username with private key: 使用SSH用戶和密鑰
Secret ?le:需要保密的文本文件,使用時Jenkins會將文件復制到一個臨時目錄中,再將文件路徑設置到一個變量中,等構建結束后,所復制的Secret ?le就會被刪除。
Secret text:需要保存的一個加密的文本串,如釘釘機器人或Github的api token
Certi?cate:通過上傳證書文件的方式
我們看到Security版塊又新增了兩個小版塊。先點擊前面的小版塊如上圖
點擊global
點擊Add Credentials
1、Username with password方式(推薦)
2、SSH Username with private key方式
使用root用戶生成公鑰和私鑰 ssh-keygen -t rsa
在/root/.ssh/目錄保存了公鑰和私鑰
id_rsa:私鑰文件
id_rsa.pub:公鑰文件
生成的公鑰放在Gitlab中
以root賬戶登錄->點擊頭像->Settings->SSH Keys
復制剛才id_rsa.pub文件的內容到這里,點擊"Add Key"
在Jenkins中添加憑證,配置私鑰
在Jenkins添加一個新的憑證,類型為"SSH Username with private key",把剛才生成私鑰文件內容復制過來
測試憑證是否可用
新建"test02"項目->源碼管理->Git,這次要使用Gitlab的SSH連接,并且選擇SSH憑證
同樣嘗試構建項目,如果代碼可以正常拉取,代表憑證配置成功!