CentOS+Jenkins+Gitee持續集成

前言

假設安裝Jenkins的設備ip:192.168.1.8

準備工作

下載導入Jenkins源,點擊前往官網瞭解更多

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

安裝java環境

yum install java-1.8.0-openjdk-devel

安裝Jenkins

國內服務器

yum install jenkins -y

海外服務器

查看最新版本列表,選擇需要的版本下載,推薦使用迅雷下載,其它下載方式基本都是龜速,本章節選擇的版本爲截止到2020.6.16最新的:

Name Last modified Size
jenkins-2.222.4-1.1.noarch.rpm 2020/05/28 62.9M

下載後上傳到 /tmp 目錄,然後執行以下命令,不同的版本請自行修改命令中的文件名:

yum install /tmp/jenkins-2.222.4-1.1.noarch.rpm

安裝git

yum install -y git

啓動Jenkins並設置開機啓動

systemctl start jenkins && chkconfig jenkins on

開放防火牆8080端口

firewall防火牆

service firewalld restart && firewall-cmd --zone=public --add-port=8080/tcp --permanent && firewall-cmd --reload

以上命令會在關閉防火牆的情況下開啓防火牆,如需關閉防火牆請執行以下命令

service firewalld stop

iptables防火牆

service iptables restart && iptables -I INPUT -p tcp --dport 8080 -j ACCEPT && service iptables save && service iptables restart

以上命令會在關閉防火牆的情況下開啓防火牆,如需關閉防火牆請執行以下命令

service iptables stop

測試Jenkins連接

瀏覽器訪問:http://192.168.1.8:8080
192.168.1.8是安裝jenkins設備的IP
8080是Jenkins默認訪問端口,也是防火牆已經開放的端口

生成Jenkins公鑰私鑰並授權

生成公鑰祕鑰

cd /var/lib/jenkins/.ssh && ssh-keygen -t rsa -C jenkins

執行後你將會看到如下圖提示:
在這裏插入圖片描述
此時輸入

/var/lib/jenkins/.ssh/id_rsa

如圖:
在這裏插入圖片描述
然後一路回車,見到類下圖時代表公鑰祕鑰已經生成成功
在這裏插入圖片描述

授權jenkins使用公鑰祕鑰

chown jenkins:jenkins /var/lib/jenkins/.ssh/id_rsa /var/lib/jenkins/.ssh/id_rsa.pub

Jenkins設置

基礎插件安裝

瀏覽器訪問插件管理http://192.168.1.8:8080/pluginManager/available
在頁面右側Filter中輸入下列插件名稱,並以此勾選,並點擊安裝

  • Publish Over SSH

添加全局憑據

瀏覽器訪問添加憑據http://192.168.1.8:8080/credentials/store/system/domain/_/newCredentials

類型SSH Username with private key
範圍全局 (Jenkins, nodes, items, all child items, etc)
username:留空,
Private Key:點擊 Enter directly,
Key:通過以下命令獲取

cat /var/lib/jenkins/.ssh/id_rsa

如下圖,這部分就是key:
在這裏插入圖片描述
複製時,務必包含==-----BEGIN RSA PRIVATE KEY----------END RSA PRIVATE KEY-----==
以上信息填寫成如下圖狀態後提交
在這裏插入圖片描述

設置Jenkins

開始持續集成

Gitee添加部署公鑰

獲取jenkins公鑰

cat /var/lib/jenkins/.ssh/id_rsa.pub

紅框部分爲jenkins公鑰
在這裏插入圖片描述
進入gitee的管理>添加公鑰界面,將紅框內的信息粘貼到指定的框內,標題隨意,爲了區分建議寫成jenkins部署方便區分,如下圖:
在這裏插入圖片描述
提交生效

添加Jenkins任務

如下圖點擊任意一個鏈接進入任務新增界面:
在這裏插入圖片描述

設置任務名稱,選擇任務類型

輸入任務名稱並選擇Freestyle Project後確定,建議任務名稱能清楚的描述項目和環境,便於後期管理
在這裏插入圖片描述

設置源碼管理

選擇Git
填寫Repository URL倉庫路徑,倉庫路徑在gitee如下圖處獲取:
在這裏插入圖片描述Credentials憑據選擇jenkins,此處的憑證爲上文中添加的全局憑據
指定分支按需選擇,本文示例的項目存在master和develop分支,示例自動部署測試服,所以選擇分支*/develop
填寫參考如下圖:
在這裏插入圖片描述

設置構建觸發器

勾選Gitee webhook 觸發構建
勾選觸發條件(按需勾選)
假設希望推送代碼時構建,則勾選推送代碼
點擊生成Gitee webhook密碼
如下圖:
在這裏插入圖片描述
上圖紅框內容:包含了webhook觸發鏈接
上圖綠框內容:包含了webhook觸發密碼
上圖藍色箭頭:點擊生成可以生成webhook觸發密碼

點擊保存

在Gitee中綁定構建觸發器設置

設置綁定構建觸發器

此時新開窗口打開Gitee中的項目,根據下圖指示點擊
在這裏插入圖片描述
在這裏插入圖片描述
點擊添加使gitee端生效

測試觸發構建是否生效

在完成上一步操作後我們可以看到已經建立的webhook,如下圖所示:
在這裏插入圖片描述
點擊箭頭所指的測試,gitee將會觸發jenkins進行構建,我們可以在Gitee中看到如下圖事件記錄:在這裏插入圖片描述同時,Jenkins的任務狀態中會響應到觸發,由於這個測試看到具體構建情況,如下圖:
在這裏插入圖片描述
由於是測試所以會出現構建失敗的提示,此處我們忽略,因爲我們只是爲了確認觸發是否有效!

添加部署服務器

繼續配置Jenkins任務

在Jenkins首頁,如下圖所示進行操作
在這裏插入圖片描述
未完待續~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

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