Linux上安裝 jenkins日記

一、什麼是持續集成?

(1)Continuous integration(CI)

持續集成是一種軟件開發實踐,即團隊開發成員經常集成他們的工作,通常每個成員至少集成一次,也就意味着每天可能會發生多次集成。每次集成都通過自動化的構建(包括編譯,發佈,自動化測試)來驗證,從而儘快地發現集成錯誤。許多團隊發現這個過程可以大大減少集成的問題,讓團隊能夠更快的開發內聚的軟件。

 

(2)沒有持續集成

項目做模塊集成的時候,發現很多借口都不通==>浪費大量時間

需要手動去編譯打包最新的代碼==>構建過程不透明

發佈代碼,上線,基本靠手工==>腳本亂飛

 

(3)持續集成最佳實踐:

維護一個單一的代碼庫

使構建自動化

執行測試是構建的一部分

集成日誌及歷史記錄

使用統一的依賴包管理庫

每天至少集成一次

 

(4)jenkins介紹

Jenkins只是一個平臺,真正運作的都是插件。這就是jenkins流行的原因,因爲jenkins什麼插件都有 
Hudson是Jenkins的前身,是基於Java開發的一種持續集成工具,用於監控程序重複的工作,Hudson後來被收購,成爲商業版。後來創始人又寫了一個jenkins,jenkins在功能上遠遠超過hudson

Jenkins官網:https://jenkins.io/

Jenkins下載:http://updates.jenkins-ci.org/

 jenkins的全部鏡像:http://mirrors.jenkins-ci.org/status.html

 

(5)部署代碼上線流程:

1.代碼獲取(直接了拉取)

2.編譯      (可選)

3.配置文件放進去

4.打包

5.scp到目標服務器

6.將目標服務器移除集羣

7.解壓並放置到Webroot

8.Scp 差異文件

9.重啓      (可選)

10.測試

11.加入集羣

 

----------------在Redhat上安裝非常簡單,原文摘錄如下:-----------------------------------------------------------------------------------

RedHat Linux RPM packages for Jenkins

To use this repository, run the following command:

sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key

If you've previously imported the key from Jenkins, the "rpm --import" will fail because you already have a key. Please ignore that and move on.

You will need to explicitly install a Java runtime environment, because Oracle's Java RPMs are incorrect and fail to register as providing a java dependency. Thus, adding an explicit dependency requirement on Java would force installation of the OpenJDK JVM.

  • 2.164 (2019-02) and newer: Java 8 or Java 11
  • 2.54 (2017-04) and newer: Java 8
  • 1.612 (2015-05) and newer: Java 7

With that set up, the Jenkins package can be installed with:

yum install jenkins

-------------------------------------------------------------------------------------------------------------------------------------------------------------------

二、jenkins部署

 1.安裝JDK 

1

[root@7mini-node2 ~]# yum install -y java-1.8.0-openjdk java-1.8.0-openjdk-devel

2.安裝jenkins

1

[root@7mini-node2 contos]# rpm -ivh jenkins-2.32.3-1.1.noarch.rpm

3.啓動

1

2

3

4

5

[root@7mini-node2 contos]# service jenkins start

Starting jenkins (via systemctl): [ OK ]

 

[root@7mini-node2 contos]# netstat -tunlp |grep :8080

tcp6 0 0 :::8080 :::* LISTEN 2259/java

4  輸入初始化密碼

1

2

[root@7mini-node2 contos]# cat /var/lib/jenkins/secrets/initialAdminPassword

a93553a4865b45198ae28f77877efe19    #登陸界面有提示輸入密碼,初始密碼文件爲/var/lib/jenkins/secrets/initialAdminPassword

 

安裝插件完成,設置用戶名:jenkins,密碼:jenkins

三、jenkins的插件以及配置

jenkins系統管理比較重要的就是插件管理了 ,因爲jenkins的工作全部是由插件來完成。

在插件管理中,有可更新、可選插件、已安裝,日常的插件安裝都是在這個界面上完成的。比如爲了和gitlab協同,我們需要安裝gitlab的插件。

 

當插件安裝不上的時候,可以直接去網上瞎子啊,進行安裝

1

2

3

4

5

6

7

下載地址

http://updates.jenkins-ci.org/

 

解壓備份plugin.tar.gz

mv plugins /var/lib/jenkins/

chown -R jenkins.jenkins plugins/

service jenkins restart

  

image.png

image.png

在高級選項中,我們可以在jenkins官網下載插件,然後上傳插件 ,如圖:

因爲很多插件需要×××纔可以繼續下載,jenkins還提供了代理的設置
還是在服務器目錄下進行上傳插件
目錄路徑= /var/lib/jenkins/plugins/
這個目錄下是我們安裝所有的插件

jenkins的目錄介紹:

1

2

3

4

5

6

7

8

9

10

[root@7mini-node2 contos]# rpm -ql jenkins

/etc/init.d/jenkins                #jenkins的啓動文件

/etc/logrotate.d/jenkins

/etc/sysconfig/jenkins             #jenkins的配置文件(可以寫改默認端口)

/usr/lib/jenkins                  

/usr/lib/jenkins/jenkins.war       #jenkins的程序war包

/usr/sbin/rcjenkins                #jenkins的爲二進制文件

/var/cache/jenkins                 #jenkins的程序文件,運行程序解壓出來的

/var/lib/jenkins                   #jenkins的主目錄

/var/log/jenkins                   #jenkins的日誌文件

1

jenkins的升級,只需要將war包解壓到/var/lib/jenkins目錄下,重啓jenkins即可。 <br>友情提示: 卡啓動問題 jenkins在第一次安裝啓動時會向官網回傳信息,如果網絡離線可以正常安裝。<br>當網絡在線,但是 還有可能是內存不足 <br>備份: tar zcvf jenkins.tar.gz /var/lib/jenkins,寫一個定時任務的腳本,保留15天的備份,通過增量備份。

在測試環境中改成root用戶來進行配置

1

2

3

4

5

6

vim /etc/sysconfig/jenkins

將用戶修改爲root,可以調用root工具

 29 JENKINS_USER="root"

 

修改啓動端口85行,$JENKINS_PORT

service jenkins restart

  

系統管理-->系統配置

執行者數量:配置併發數量,一般設置爲5,不超過10

用法:如果是主server,可以不選,如果是從級別必須選擇“儘可能的使用這個節點”

生成前等待時間:配置該時間10s,避免錯誤操作,有時間返回

 

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