部署Jenkins

一.Jenkins簡(jiǎn)介

Jenkins只是一個(gè)平臺(tái),真正運(yùn)作的都是插件。這就是jenkins流行的原因,因?yàn)閖enkins什么插件都有 。
Hudson是Jenkins的前身,Hudson是基于Java開發(fā)的一種持續(xù)集成工具,用于監(jiān)控程序重復(fù)持續(xù)的工作,Hudson后來被收購(gòu),成為商業(yè)版。后來為了方便使用創(chuàng)始人又寫了一個(gè)jenkins,jenkins在功能上遠(yuǎn)遠(yuǎn)超過hudson。

Jenkins的優(yōu)點(diǎn)和功能特性

持續(xù)集成和持續(xù)交付
作為一個(gè)可擴(kuò)展的自動(dòng)化服務(wù)器,Jenkins 可以用作簡(jiǎn)單的 CI 服務(wù)器,或者變成任何項(xiàng)目的持續(xù)交付中心。

簡(jiǎn)易安裝
Jenkins 是一個(gè)基于 Java 的獨(dú)立程序,可以立即運(yùn)行,包含 Windows、Mac OS X 和其他類 Unix 操作系統(tǒng)。

配置簡(jiǎn)單
Jenkins 可以通過其網(wǎng)頁(yè)界面輕松設(shè)置和配置,其中包括即時(shí)錯(cuò)誤檢查和內(nèi)置幫助。

插件
通過更新中心中的 1000 多個(gè)插件,Jenkins 集成了持續(xù)集成和持續(xù)交付工具鏈中幾乎所有的工具。

擴(kuò)展
Jenkins 可以通過其插件架構(gòu)進(jìn)行擴(kuò)展,從而為 Jenkins 可以做的事提供幾乎無(wú)限的可能性。

分布式
Jenkins 可以輕松地在多臺(tái)機(jī)器上分配工作,幫助更快速地跨多個(gè)平臺(tái)推動(dòng)構(gòu)建、測(cè)試和部署。

二.安裝環(huán)境

1.操作系統(tǒng):Centos 7.6
2.服務(wù)器配置:2G內(nèi)存,50G磁盤
3.安裝包:jdk-8u211-linux-x64.rpm jenkins-2.190.2-1.1.noarch.rpm apache-tomcat-9.0.26.tar.gz
4.關(guān)閉selinux和防火墻

三.部署Jenkins

官網(wǎng):https://jenkins.io/
國(guó)內(nèi)下載地址:https://mirrors.tuna.tsinghua.edu.cn/jenkins/

1.安裝jdk

[root@jenkins ~]# yum -y localinstall jdk-8u211-linux-x64.rpm

2.安裝jenkins

注意:?jiǎn)?dòng)Jenkins的方式不同,對(duì)應(yīng)的文件存放目錄等是存在差異的,具體的請(qǐng)注意一下即可。

2.1下載安裝Jenkins
[root@jenkins ~]# wget https://mirrors.tuna.tsinghua.edu.cn/jenkins/redhat-stable/jenkins-2.190.2-1.1.noarch.rpm
#注意:其它版本安裝包,對(duì)應(yīng)官方下載既可。
[root@jenkins ~]# yum -y localinstall jenkins-2.190.2-1.1.noarch.rpm

jenkins主要的目錄:
/usr/lib/jenkins/:jenkins安裝目錄,WAR包會(huì)放在這里
/etc/sysconfig/jenkins:jenkins配置文件,“端口”,“JENKINS_HOME”等都可以在這里配置
/var/lib/jenkins/:默認(rèn)的JENKINS_HOME
/var/log/jenkins/jenkins.log:Jenkins日志文件

2.2啟動(dòng)Jenkins

注意:
1、如果jenkins啟動(dòng)用戶是jenkins,則無(wú)法拉取代碼,因?yàn)槲覀兪前裷oot的公鑰推送到gitlab普通用戶dev下(dev屬于ops組,所以可以拉取代碼)

2、jenkins用戶啟動(dòng),需要把root公鑰放到deploy下

項(xiàng)目--settings--repository-deploy keys
第一種啟動(dòng)方法:

#配置jenkins
[root@jenkins ~]# vim /etc/sysconfig/jenkins #進(jìn)入配置文件啟動(dòng)用戶修改為root,默認(rèn)的為Jenkins。
.....
JENKINS_USER="root"
.....
#啟動(dòng)Jenkins
[root@CentOS7 ~]# systemctl start jenkins
[root@CentOS7 ~]# systemctl enable jenkins

第二種方法是用tomcat打開

解壓tomcat到某個(gè)目錄,如/usr/local,進(jìn)入tomcat下的/bin目錄,啟動(dòng)tomcat
將jenkins.war文件放入tomcat下的webapps目錄下,啟動(dòng)tomcat時(shí),會(huì)自動(dòng)在webapps目錄下建立jenkins目錄,在地址欄上需要輸入主機(jī)ip:8080/jenkins。
這里使用的是第二種方案進(jìn)行啟動(dòng)Jenkins:

#安裝tomcat
[root@jenkins ~]# tar xf apache-tomcat-9.0.26.tar.gz -C /usr/local/
[root@jenkins ~]# ln -s /usr/local/apache-tomcat- 9.0.26/usr/local/tomcat
[root@jenkins ~]# rm -rf /usr/local/tomcat/webapps/ROOT #刪除默認(rèn)站點(diǎn)目錄
[root@jenkins ~]# cp /usr/lib/jenkins/jenkins.war /usr/local/tomcat/webapps/ROOT.war#復(fù)制jenkins.war 到站點(diǎn)目錄下并重命名為ROOT.war
[root@jenkins ~]# /usr/local/tomcat/bin/startup.sh #啟動(dòng)Tomcat
#啟動(dòng)前查看該目錄是空的,啟動(dòng)后會(huì)生成相應(yīng)的文件
[root@jenkins ~]# ll /root/.jenkins/
total 28
-rw-r--r-- 1 root root 1640 2019-11-23 11:49 config.xml
-rw-r--r-- 1 root root  156 2019-11-23 11:47 hudson.model.UpdateCenter.xml
-rw------- 1 root root 1712 2019-11-23 11:47 identity.key.enc
-rw-r--r-- 1 root root    7 2019-11-23 11:47 jenkins.install.UpgradeWizard.state
-rw-r--r-- 1 root root  171 2019-11-23 11:47 jenkins.telemetry.Correlator.xml
drwxr-xr-x 2 root root    6 2019-11-23 11:47 jobs
drwxr-xr-x 3 root root   19 2019-11-23 11:47 logs
-rw-r--r-- 1 root root  907 2019-11-23 11:47 nodeMonitors.xml
drwxr-xr-x 2 root root    6 2019-11-23 11:47 nodes
drwxr-xr-x 2 root root    6 2019-11-23 11:47 plugins
-rw-r--r-- 1 root root   64 2019-11-23 11:47 secret.key
-rw-r--r-- 1 root root    0 2019-11-23 11:47 secret.key.not-so-secret
drwx------ 4 root root  265 2019-11-23 11:47 secrets
drwxr-xr-x 2 root root   26 2019-11-23 11:49 updates
drwxr-xr-x 2 root root   24 2019-11-23 11:47 userContent
drwxr-xr-x 3 root root   56 2019-11-23 11:47 users
說明:如果你是使用第一種方式啟動(dòng),默認(rèn)情況下/var/lib/jenkins/是空的,啟動(dòng)后會(huì)出現(xiàn)相應(yīng)的配置文件。
2.3登錄web頁(yè)面進(jìn)行安裝http://ip:prot(默認(rèn)端口為8080)
2.4根據(jù)界面提示信息去服務(wù)daunt查看密碼
[root@jenkins ~]# cat /root/.jenkins/secrets/initialAdminPassword
7d429f2d73944e769180865371f9cbb5
2.5將上面的7d429f2d73944e769180865371f9cbb5復(fù)制到輸入框
2.6上個(gè)步驟執(zhí)行完成后,會(huì)彈出下面的對(duì)話框,點(diǎn)擊推薦安裝即可。

說明:這里默認(rèn)情況下選擇推薦安裝插件是很難實(shí)現(xiàn)的,這里采用nginx代理的方式來實(shí)現(xiàn)跳轉(zhuǎn)清華源的方式進(jìn)行插件的安裝,具體操作請(qǐng)參考鏈接文檔:https://my.oschina.net/VASKS/blog/3106314


配置完成代理后進(jìn)行插件安裝,過程及結(jié)果如圖:

2.7創(chuàng)建第一個(gè)管理員用戶
2.8示例配置
2.9開始使用Jenkins
2.10出現(xiàn)下面的界面,那么Jenkins安裝就成功了。

注意:如果出現(xiàn)nginx代理也無(wú)法安裝插件的情況這里就只能在服務(wù)端進(jìn)行插件的安裝。這里只有在之前的步驟3.6之后才有變化

具體操作如下:

1)web界面設(shè)置

1.1彈出出下圖的對(duì)話框,點(diǎn)擊關(guān)閉即可。
1.2.開始使用Jenkins
1.3.出現(xiàn)下面的界面,那么安裝就成功了
1.4.修改密碼


1.5修改完成后自動(dòng)跳入到登錄驗(yàn)證界面,這里用修改的密碼登錄驗(yàn)證。


2)插件安裝

2.1點(diǎn)擊系統(tǒng)管理
2.2點(diǎn)擊管理插件
2.3查看已經(jīng)安裝的插件
2.4可以在web界面直接安裝的插件
2.5在服務(wù)端安裝插件

安裝插件你可以自行在官方下載,導(dǎo)入到插件的安裝目錄下,之后重啟Jenkins即可使用。這里提供一個(gè)已下載好的插件包,一般需要的安裝的插件都已經(jīng)包含。
插件安裝獲取鏈接:https://pan.baidu.com/s/1EBdU60usgQXbCbGhlXa3pQ
提取碼:jp4q

#查看Jenkins插件包的目錄
[root@kibana ~]# cd /root/.jenkins/plugins/
[root@kibana ~/.jenkins/plugins]# ll 
total 0
#將下載的安裝包上傳到服務(wù)器上之后解壓
[root@kibana ~/.jenkins/plugins]# rz -E
rz waiting to receive.
[root@kibana ~/.jenkins/plugins]# ls
plugins.tar.gz
 #解壓插件壓縮包
[root@kibana ~/.jenkins/plugins]# tar xf plugins.tar.gz
[root@kibana ~/.jenkins/plugins]# ls
plugins  plugins.tar.gz
#插件包共有191個(gè)
[root@kibana ~/.jenkins/plugins]# ll plugins/|wc -l  #插件包共有191個(gè)
191
 #移動(dòng)到Jenkins存放插件的目錄。
[root@kibana ~/.jenkins/plugins]# mv plugins/* .
[root@kibana ~/.jenkins/plugins]# ll|wc -l
193
#重啟tomcat
[root@kibana ~/.jenkins/plugins]# /usr/local/tomcat/bin/shutdown.sh
[root@kibana ~/.jenkins/plugins]# /usr/local/tomcat/bin/startup.sh
2.2瀏覽器刷新查看已安裝的插件
2.3安裝漢化包


2.4重啟tomcat

[root@kibana ~/.jenkins/plugins]# /usr/local/tomcat/bin/shutdown.sh
[root@kibana ~/.jenkins/plugins]# /usr/local/tomcat/bin/startup.sh

2.5瀏覽器查看漢化效果

至此Jenkins的部署全部完成,你可以根據(jù)需要自己安裝即可。

解決提示“該Jenkins實(shí)例似乎已離線”或“界面一直停留在

提示
:Please wait while Jenkins is getting ready to work …
Your browser will reload automatically when Jenkins is ready.”的問題
解決辦法請(qǐng)參考鏈接文檔:https://blog.51cto.com/13568014/2350363

啟動(dòng)Jenkins報(bào)錯(cuò)(自定義安裝jdk路徑容易出現(xiàn)的問題)

Jenkins配置jdk(啟動(dòng)報(bào)錯(cuò):Starting Jenkins bash: /usr/bin/java: No such file or directory)
解決辦法:


[root@jenkins ~]# systemctl daemon-reload 
[root@jenkins ~]# systemctl start jenkins
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。
禁止轉(zhuǎn)載,如需轉(zhuǎn)載請(qǐng)通過簡(jiǎn)信或評(píng)論聯(lián)系作者。

推薦閱讀更多精彩內(nèi)容