真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

部署Jenkins+Gitlab實現(xiàn)持續(xù)集成

前言

Jenkins介紹

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

目前成都創(chuàng)新互聯(lián)公司已為成百上千的企業(yè)提供了網(wǎng)站建設(shè)、域名、網(wǎng)站空間、網(wǎng)站改版維護、企業(yè)網(wǎng)站設(shè)計、新豐網(wǎng)站維護等服務(wù),公司將堅持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。

參考文獻:Jenkins中文網(wǎng)

在進入部署安裝的正題之前,有以下幾個問題需要搞清楚?。?!

1、什么是集成?

指的是代碼由編譯、發(fā)布和測試、直到上線的一個過程。

2、什么是持續(xù)集成?

高效的、持續(xù)性質(zhì)的不斷迭代代碼的集成工作。

3、如何高效準確的實現(xiàn)持續(xù)集成

必不可少的需要一套能自動化、并且可視化的平臺來幫助我們。

根據(jù)以上幾點來看,Jenkins就是一個可以實現(xiàn)持續(xù)集成的平臺。

4、為什么是Jenkins來幫助我們實現(xiàn)持續(xù)集成?

1)Jenkins是一個開源的、且基于JAVA代碼開發(fā)的持續(xù)集成系統(tǒng)。

因為含有非常豐富的插件支持,所以我們可以方便的打通版本庫、測試構(gòu)建環(huán)境、線上環(huán)境的所有環(huán)節(jié)。并且豐富友好的通知使用者和開發(fā)、管理人員。

2)安裝維護簡單

安裝Jenkins,不太復(fù)雜。而且支持通用的平臺。

3)Java應(yīng)用常用

在企業(yè)的軟件構(gòu)建過程中,JAVA的應(yīng)用工程稍顯復(fù)雜,由于復(fù)雜構(gòu)建和代碼上線、并且服務(wù)的重啟。整個過程下來,消耗的時間較多,Jenkins卻能很好的集成maven的編譯方式,而且利用自動化的插件和自定義開發(fā)腳本的支持。所以目前廣泛的應(yīng)用于JAVA工程的持續(xù)集成平臺。

接下來用到的所有軟件包大多數(shù)是從清華開源鏡像站下載。

一、部署安裝gitlab

1、安裝gitlab

[root@jenkins ~]# wget https://mirrors-i.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-11.9.8-ce.0.el7.x86_64.rpm
[root@jenkins ~]# rpm -ivh gitlab-ce-11.9.8-ce.0.el7.x86_64.rpm 
#由于我不打算做域名解析,所以需要修改其配置文件
root@jenkins ~]# vim /etc/gitlab/gitlab.rb 
external_url 'http://192.168.20.2'     #將原本的域名改為本機IP
[root@jenkins ~]# gitlab-ctl reconfigure  #重新配置gitlab,就算不修改配置文件,也需要在安裝后重新配置gitlab
[root@jenkins ~]# netstat -anpt | grep -w 80    #確定其80端口在監(jiān)聽

2、配置gitlab

客戶端訪問服務(wù)器的IP地址,可以看到以下界面(配置密碼并登陸):

部署Jenkins+Gitlab實現(xiàn)持續(xù)集成

部署Jenkins+Gitlab實現(xiàn)持續(xù)集成

上傳服務(wù)器公鑰(接下來的操作與在github上大同小異),先在服務(wù)器上生成密鑰對:

[root@jenkins ~]# ssh-keygen -t rsa -C "916551516@qq.com"
[root@jenkins ~]# cat ~/.ssh/id_rsa.pub    #查看生成的公鑰并復(fù)制其內(nèi)容
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCeOeInVnfQiVdTTiA8MyaIuMdrtQUce1BpiBR8d2IAWS4PVznRub+m9hRR2vRRK3K3T4oMGpgjvj7s5n8n4AcFojDRsNgCrpprz4jlTykm0okQclXtOzeFfpLzwp08l0mmb3ZotuU/iK5sYUh70MAxG/gSzfZ5Cscmba+HGSYksN75BRkYBOT3VBJHuqhdHEIrmK0uOUU4/F3ImqrBoOs3/2c6aI5AxrHGy3aVdWAcg2Pg541djMD74DJCaVpPj08GQNZZBmN/p7Ft3v6Vi+jqty7CQF+uhs1x3oD/tka88F/4A/rMR862TqATQ+Uuqn2LOfrvGR6kzJH5MtyKOumB 916551516@qq.com

然后回到web界面:

部署Jenkins+Gitlab實現(xiàn)持續(xù)集成

部署Jenkins+Gitlab實現(xiàn)持續(xù)集成

添加后如下:

部署Jenkins+Gitlab實現(xiàn)持續(xù)集成

創(chuàng)建一個庫:

部署Jenkins+Gitlab實現(xiàn)持續(xù)集成

部署Jenkins+Gitlab實現(xiàn)持續(xù)集成

部署Jenkins+Gitlab實現(xiàn)持續(xù)集成

部署Jenkins+Gitlab實現(xiàn)持續(xù)集成

回到服務(wù)器上進行克隆剛剛創(chuàng)建的庫:

[root@jenkins ~]# git clone git@192.168.20.2:root/test01.git  #克隆
[root@jenkins ~]# cd test01/      #進入克隆的庫
[root@jenkins test01]# ls  #該目錄下的東西和剛剛web頁面創(chuàng)建好庫后的內(nèi)容一樣
README.md
#自報家門
[root@jenkins test01]# git config --global user.name test
[root@jenkins test01]# git config --global user.email "test@test.com"
#向遠端庫上傳文件進行測試
[root@jenkins test01]# echo "aaaaaaaaaaaa" > test.txt
[root@jenkins test01]# git add test.txt
[root@jenkins test01]# git commit -m "commit from local"
[root@jenkins test01]# git push origin master      #推送到遠端庫

刷新web界面的庫頁面即可看到剛剛推送的測試文件:

部署Jenkins+Gitlab實現(xiàn)持續(xù)集成

至此,說明gitlab配置無誤,即可告一段落。

二、部署安裝Jenkins

1、安裝Jenkins

#下載并安裝
[root@jenkins ~]# wget https://mirrors-i.tuna.tsinghua.edu.cn/jenkins/redhat/jenkins-2.172-1.1.noarch.rpm
[root@jenkins ~]# rpm -ivh jenkins-2.172-1.1.noarch.rpm 
[root@jenkins ~]# rpm -ql jenkins      #查看其相應(yīng)文件的存放路徑
[root@jenkins ~]# sed -i 's/JENKINS_PORT="8080"/JENKINS_PORT="8081"/g' /etc/sysconfig/jenkins     #修改其監(jiān)聽端口
[root@jenkins ~]# /etc/init.d/jenkins start     #啟動Jenkins
[root@jenkins ~]# netstat -anpt | grep 8081      #確定端口在監(jiān)聽
tcp6       0      0 :::8081                 :::*                    LISTEN      65172/java          

2、配置Jenkins的web界面

客戶端訪問Jenkins服務(wù)器的監(jiān)聽端口8081,然后根據(jù)提示復(fù)制其管理員密碼。如下:

[root@jenkins ~]# cat /var/lib/jenkins/secrets/initialAdminPassword
e501f94f2d914b22ae6ef7384b34531a

部署Jenkins+Gitlab實現(xiàn)持續(xù)集成

接下來可以安裝一些基礎(chǔ)插件,點擊它的推薦安裝即可,如下(我直接上傳我這里的包到指定目錄,就可以跳過這個步驟了,可以下載我的包,進行和我一樣的操作):

部署Jenkins+Gitlab實現(xiàn)持續(xù)集成

我沒有安裝它的推薦插件,我選擇以下的方式安裝:

[root@jenkins ~]# tar zxf jenkins-plugins.tar.gz -C /var/lib/jenkins/
[root@jenkins ~]# /etc/init.d/jenkins restart    #重啟Jenkins

注意:若使用我這種方式安裝,那么再次訪問時需要斷開外網(wǎng)。

部署Jenkins+Gitlab實現(xiàn)持續(xù)集成

部署Jenkins+Gitlab實現(xiàn)持續(xù)集成

部署Jenkins+Gitlab實現(xiàn)持續(xù)集成

部署Jenkins+Gitlab實現(xiàn)持續(xù)集成

部署Jenkins+Gitlab實現(xiàn)持續(xù)集成

經(jīng)過上述配置,即可看到Jenkins的工作頁面,如下:

部署Jenkins+Gitlab實現(xiàn)持續(xù)集成

3、配置Jenkins拉取Gitlab的倉庫代碼

部署Jenkins+Gitlab實現(xiàn)持續(xù)集成

部署Jenkins+Gitlab實現(xiàn)持續(xù)集成

部署Jenkins+Gitlab實現(xiàn)持續(xù)集成

[root@jenkins ~]# cat ~/.ssh/id_rsa      #復(fù)制查看到的所有內(nèi)容,包括開頭和結(jié)尾的“---”行
-----BEGIN RSA PRIVATE KEY-----
MIIEowIBAAKCAQEAnjniJ1Z30IlXU04gPDMmiLjHa7UFHHtQaYgUfHdiAFkuD1c5
0bm/pvYUUdr0UStyt0+KDBqYI74+7OZ/J+AHBaIw0bDYAq6aa8+I5U8pJtKJEHJV
7Ts3hX6S88KdPJdJpm92aLblP4iubGFIe9DAMRv4Es32eQrHJm2vhxkmJLDe+QUZ
GATk91QSR7qoXRxCK5itLjlFOPxdyJqqwaDrN/9nOmiOQMaxxst2lXVgHINj4OeN
XYzA++AyQmlaT49PBkDWWQZjf6exbd7+lYvo6rcuwkBfrobNcd6A/7ZGvPBf+AP6
zEfOtk6gE0PlLqp9izn67xkepMyR+TLcijrpgQIDAQABAoIBABIUCwLznjz1dETQ
aF54ea6lbiOgSzU14botEiomecwQZHLcRH7x+jPZafjwS3n6vOC09dDsOPXchtQK
gfzMXAEIxwsuaX/k8z/eNoX8xXbqFz8J0UeJvI5EKAYx9kU2A/RASAcu3oKj20oG
04FSGKODzpRXdBHgaWC6p5OIDBOk88zsVK6ZXniVoCHhb1ngAa8k45m4IEXBspmk
znd7/8VxKkMt76IWZcgVaDOLHEbh5ikg+WL1M/DnvToCtZrb24jRbkHy2IM2oh/y
awW2WGP/KDHro1hO0mZvcBWxhN++2AExRKDXFnSN0TyMJwIb18RaYhBaBt+iJFoE
/Fv9sAECgYEA0d4LMXhXHis7I+ccEQKcfFtpFf4fgEJ7+XeyUiRTnqDmMOjSk1TL
0JMiIpzD6FTXxp/wo2JTHDKLxqW5U7qhxSZFkNwJcuGISJqD8U3jp14hdrbwAQbi
jniTAJM5mO0Un/OOhbtSaXXsRlUDkgcG4nM2g4SRehTlLSh0qkiZ+KkCgYEAwQHP
Luh/YYis31oAdrF+1JyK2OBiLg+YuLbx6j7b0gLTwJA2KFKchnNHZ1uWq616Ewf3
7Ajy1/8VlAfnSWZh2TPHEFAYes293AT6Z0Ij8eEc9dG/O4Lq/bM3ChgxYKP4ef/E
BwuijDz0wDn253QfcGuh5Ss15DtbOS+abDS0ORkCgYAoRzdavT/rGFz3XQmz8g5a
h7i5gdZF5XypumFNBo/N6A+F34laoXGkjDiG8BNhabcn9dZXZS2SQdk1vOS+vxkB
H4FGdhSSKdrgJFeiXlKM8rH1eNLDP7EHqvh7qcXqJcZJlJML85Gzj+BS90oCIrsd
hwM1ZqINDimV6yfI7rouUQKBgBtP4DupFu18Y8oveEVTlLkNdfB+wCX4ewoYiV82
ifDMCZ8ESUWnexLjmUUdBtNAdzfeNs0l7wd1x13tSGNwo4OCEjdSvkQSfT13Tt/x
0hhWXLzEc6U+P3arN6ysA8DDM1RAR0Mf+F6T+aaCDVhvbEuCT6QHc1bat2v+OoH5
a09xAoGBAJGu+GSpxO/vRDfxaJGgclhEXpCahuL6ggUZcZSsUu/qiCq4cbSC26/9
X7+cws3d5ow1vIZttM19meK1Z6r0qOii7GOX3vEWVsDyrt5rpVNSb/M6F1D7MV07
YV1esSxZGB9Spa7TAzuE2bwkMIDAu72nCRx+MO83vHSFRpkln+7O
-----END RSA PRIVATE KEY-----

部署Jenkins+Gitlab實現(xiàn)持續(xù)集成

部署Jenkins+Gitlab實現(xiàn)持續(xù)集成

部署Jenkins+Gitlab實現(xiàn)持續(xù)集成

可以看到以下頁面即可說明配置無誤:

部署Jenkins+Gitlab實現(xiàn)持續(xù)集成

終端查看本地同步過來的文件:

[root@jenkins ~]# ls /var/lib/jenkins/workspace/web01
README.md  test.txt
[root@jenkins ~]# cat /var/lib/jenkins/workspace/web01/test.txt 
aaaaaaaaaaaa

三、配置Jenkins+Gitlab實現(xiàn)持續(xù)集成

接下來就是這篇文件的關(guān)鍵部分了。

在進行下面的配置前,若為了方便,可以先下載我提供的插件。

部署Jenkins+Gitlab實現(xiàn)持續(xù)集成

然后你會看到一些報紅的提示,不用在意,下拉頁面,如下:
部署Jenkins+Gitlab實現(xiàn)持續(xù)集成

部署Jenkins+Gitlab實現(xiàn)持續(xù)集成

依次上傳我提供的包,順序如下:gitlab-oauth====》gitlab-plugin ====》 windows-slaves ====》ruby-runtime ====》gitlab-hook

根據(jù)以下操作,依次上傳上面的包:

部署Jenkins+Gitlab實現(xiàn)持續(xù)集成

插件上傳完成后,即可。

這里我附加一下,如果想要在線安裝插件,可以更改其插件來源為清華大學(xué)的Jenkins鏡像站的URL,這里附加一個更改方法的鏈接請?zhí)砑渔溄用枋?,自行參看進行更改即可。

修改過程如下:

部署Jenkins+Gitlab實現(xiàn)持續(xù)集成

附加內(nèi)容至此結(jié)束。

由于接下來多數(shù)操作是點點點,所以就不截圖了,只會截比較關(guān)鍵的圖。

依次點擊:系統(tǒng)管理===》全局安全配置===》授權(quán)策略,然后進行以下操作:
部署Jenkins+Gitlab實現(xiàn)持續(xù)集成
依次點擊:系統(tǒng)管理===》系統(tǒng)設(shè)置,然后進行以下操作:
部署Jenkins+Gitlab實現(xiàn)持續(xù)集成

然后進行以下操作:

部署Jenkins+Gitlab實現(xiàn)持續(xù)集成
部署Jenkins+Gitlab實現(xiàn)持續(xù)集成

在終端生成令牌并復(fù)制:

[root@jenkins ~]# openssl rand -hex 10  #復(fù)制下面的字符串
dbd47a73dba048febf4f

部署Jenkins+Gitlab實現(xiàn)持續(xù)集成

回到Gitlab的web頁面,進行以下操作:

部署Jenkins+Gitlab實現(xiàn)持續(xù)集成

部署Jenkins+Gitlab實現(xiàn)持續(xù)集成

部署Jenkins+Gitlab實現(xiàn)持續(xù)集成
部署Jenkins+Gitlab實現(xiàn)持續(xù)集成

部署Jenkins+Gitlab實現(xiàn)持續(xù)集成

接下來需要去Jenkins找到我們所需的URL

以下操作在Jenkins的web頁面進行操作:

部署Jenkins+Gitlab實現(xiàn)持續(xù)集成

部署Jenkins+Gitlab實現(xiàn)持續(xù)集成

部署Jenkins+Gitlab實現(xiàn)持續(xù)集成

看到上述內(nèi)容后,我們需要對Jenkins的URL進行拼接,大概是Jenkins的訪問地址+/job....=身份驗證令牌碼。我這里拼接后的的如下:http://192.168.20.2:8081/job/web01/build?token=dbd47a73dba048febf4f

然后回到gitlab的頁面,輸入Jenkins的URL:

部署Jenkins+Gitlab實現(xiàn)持續(xù)集成

添加后,下拉頁面,點擊如下以便測試:

部署Jenkins+Gitlab實現(xiàn)持續(xù)集成

部署Jenkins+Gitlab實現(xiàn)持續(xù)集成

至此,持續(xù)部署便安裝完成了,接下來就是測試了,在終端上提交代碼到gitlab上,查看Jenkins有沒有自動同步,如下:

#向gitlab提交新代碼
[root@jenkins ~]# cd test01/
[root@jenkins test01]# echo "dffffffffdfdfdfdf" > chixu.txt 
[root@jenkins test01]# git add chixu.txt
[root@jenkins test01]# git commit -m "chi xu bu shu test"
[root@jenkins test01]# git push origin master

Jenkins可以看到以下,即可說明持續(xù)部署配置完成了。如下:

部署Jenkins+Gitlab實現(xiàn)持續(xù)集成

部署Jenkins+Gitlab實現(xiàn)持續(xù)集成

部署Jenkins+Gitlab實現(xiàn)持續(xù)集成

算了,還是在本地看一下吧:

[root@jenkins test01]# cat /var/lib/jenkins/workspace/web01/chixu.txt 
#就是我們剛提交的文件
dffffffffdfdfdfdf

———————— 本文至此結(jié)束,感謝閱讀 ————————


當前名稱:部署Jenkins+Gitlab實現(xiàn)持續(xù)集成
標題鏈接:http://weahome.cn/article/pspdcc.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部