(八)Jenkins的簡介與安裝,及簡單部署Springboot項目使用

本文爲學習筆記,主要用於記錄本人學習過程。部分內容爲轉載!!!!

Jenkins是什麼?

Jenkins是一個開源軟件項目,是基於Java開發的一種持續集成工具,用於監控持續重複的工作,旨在提供一個開放易用的軟件平臺,使軟件的持續集成變成可能。

Jenkins功能包括:

1、持續的軟件版本發佈/測試項目。

2、監控外部調用執行的工作。

Centos下安裝Jenkins

1、安裝JDK1.8

tar -zxvf jdk-8u121-linux-x64.gz -C /usr/local && \
ln -sv /usr/local/jdk1.8.0_121 /usr/local/jdk1.8 && \
echo "export PATH=$PATH:/usr/local/jdk1.8/bin" >/etc/profile.d/java.sh
source /etc/profile.d/java.sh
$ java -version

2、安裝Jenkins

$ sudo wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat-stable/jenkins.repo
$ sudo rpm --import https://jenkins-ci.org/redhat/jenkins-ci.org.key
$ sudo yum -y install jenkins

3、安裝Git

$ sudo yum install -y git

設置Git的賬戶信息

$ git config --global user.name "用戶名"
$ git config --global user.email "郵箱"

4、maven安裝

cd /usr/local/ && wget -c wget  https://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.5.3/binaries/apache-maven-3.5.3-bin.tar.gz && \
tar -zxf apache-maven-3.5.3-bin.tar.gz && \
echo "export PATH=$PATH:/usr/local/apache-maven-3.5.3/bin" > /etc/profile.d/maven.sh && \
source /etc/profile.d/maven.sh

mvn 測試

$ mvn -version
Apache Maven 3.5.3 (3383c37e1f9e9b3bc3df5050c29c8aff9f295297; 2018-02-25T03:49:05+08:00)

5、svn安裝

yum install subversion -y
mkdir /svnrepo
svnadmin create /svnrepo/project1      #創建一個新的Subversion項目

啓動Jenkins

1、設置允許開機啓動

chkconfig jenkins on

2、調整配置文件

## sudo vim /etc/sysconfig/jenkins
JENKINS_USER="root" ## 原值 "jenkins" 必須修改,否則權限不足
JENKINS_PORT="8080" ## 原值 "8080" 可以不修改
## 還有開啓 HTTPS 相關參數,此處不打算開啓,故不作說明

 安裝目錄: /usr/lib/jenkins 
工作目錄: /var/lib/jenkins(對應於環境變量 JENKINS_HOME)

3、啓動Jenkins

sudo systemctl enable jenkins
sudo systemctl restart jenkins

查看日誌文件: sudo tail -f /var/log/jenkins/jenkins.log

啓動後會生成文件 hudson.model.UpdateCenter.xml需要修改它,也可以通過Vi 修改 
否則瀏覽器首次進入時會卡在“Jenkins 正在啓動,請稍後…”

## 原值: http://updates.jenkins-ci.org/update-center.json
## 新值: http://mirror.xmission.com/jenkins/updates/update-center.json
## 或者: http://mirror.xmission.com/jenkins/updates/current/update-center.json
sudo cat /var/lib/jenkins/hudson.model.UpdateCenter.xml
sudo sed -i 's/updates.jenkins-ci.org/mirror.xmission.com\/jenkins\/updates/g' /var/lib/jenkins/hudson.model.UpdateCenter.xml
sudo cat /var/lib/jenkins/hudson.model.UpdateCenter.xml
sudo systemctl restart jenkins

 4、防火牆放行

### sudo vim /etc/sysconfig/iptables
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT
### 重啓生效: sudo systemctl restart iptables

 5、卸載Jenkins

如果要重裝,或者本機不需要 Jenkins,可卸載:

sudo systemctl stop jenkins
sudo systemctl disable jenkins
sudo yum -y remove jenkins
sudo rm -rf /var/{lib,log,cache}/jenkins /usr/lib/jenkins /root/.jenkins
sudo rm -rf `sudo find /{etc,var,run} -name "jenkins*"`

配置Jenkins

1、登錄

瀏覽器進入 http://centosip:8080/ 
首次進入需要輸入初始密碼來解鎖,初始密碼查看方法: sudo cat /var/lib/jenkins/secrets/initialAdminPassword 

進入 Jenkins 定製界面,讓選擇 安裝推薦的插件 或 選擇插件來安裝 時

設置成功後即進入Jenkins主界面:

點擊左上側系統管理,進入Jenkins基本系統設置(主要是以下三塊):

先進入“管理插件”模塊安裝必需的插件,以下是建議安裝列表(也可根據實際情況進行選擇):

將本文附件中的插件放入Jenkins插件存放目錄即可,如本文插件存放目錄爲:

/var/lib/jenkins

(可點擊系統管理–>系統設置,在最上方查看,如下圖);

配置系統設置

 

添加編碼全局屬性:

增加系統管理員郵件地址:

其他的可用默認配置,保存後退出。

添加全局配置Global ToolConfiguration

配置JDK,不採用自動安裝:

配置maven,不採用自動安裝:

手動安裝的git,web界面只需添加具體可執行路徑即可 

三、Springboot系統簡單部署

系統設置完成後開始添加任務,任務類型選擇自由風格:

 

創建完成後可在主頁看到如下畫面:

 

在”All” tab下能看到新建的任務,點擊該任務,進入該任務的配置頁面:

 

設置項目備註及構建規則:

 

配置項目的git地址並配置代碼訪問密碼以及需要構建的分支:

 

配置構建觸發器,如下圖配置爲每天晚上9:30開始構建(Cron表達式):

 

增加Invoke top-level Maven targets構建步驟,目標爲項目構建打包,另外還可以配置構建時忽略測試用例:

 

增加構建後操作步驟:Send build artifacts over SSH,配置需要發佈到的服務器主機(該插件需要自己安裝配置,配置內容見下方):

       參數說明:

Transfer SetSource files:表示要上傳的本地的jar包及路徑,可到工作空間去看。

Remove prefix:表示要上傳時要去除的文件夾,即只上傳jar包。

remote driectory:即表示執行時的路徑,相當於把jar包上傳到這裏了。

exec commad:要執行的命令腳本(上面的命令只用於一次啓動,重複部署時需要先關閉進程再部署,不然會出異常)。

(附)發佈到的服務器配置

配置安裝 打開jenkins首頁,點擊系統管理--系統設置,下拉找到找到publish over ssh,進行以下設置(請確保前面的步驟中publish over ssh插件已經安裝成功,如果沒有發現,那就是還沒有安裝成功,請返回去安裝)。

以上即爲本項目的所有配置,完成後應用(或保存)並退出。

配置完成後即可開始構建,左側可查看構建歷史:

點擊立刻構建即可開始構建項目。點擊consoleoutput,就可以看到成功上傳jar包到遠程Linux並且成功發佈項目的信息了。

至此已完成所有jenkins配置。瀏覽器訪問剛纔發佈的項目即可看到實際效果!

 

 

參考文檔:

https://www.jianshu.com/p/d4f2953f3ce0

https://blog.csdn.net/qq_26848099/article/details/78901240

https://blog.csdn.net/hc_ttxs/article/details/79384535

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章