1. <ul id="0c1fb"></ul>

      <noscript id="0c1fb"><video id="0c1fb"></video></noscript>
      <noscript id="0c1fb"><listing id="0c1fb"><thead id="0c1fb"></thead></listing></noscript>

      99热在线精品一区二区三区_国产伦精品一区二区三区女破破_亚洲一区二区三区无码_精品国产欧美日韩另类一区

      RELATEED CONSULTING
      相關咨詢
      選擇下列產品馬上在線溝通
      服務時間:8:30-17:00
      你可能遇到了下面的問題
      關閉右側工具欄

      新聞中心

      這里有您想知道的互聯網營銷解決方案
      Jenkins+Gitlab實現持續(xù)集成

      一、Jenkins及持續(xù)集成

      1)什么是Jenkins?

      Jenkins是一個開源軟件項目,旨在提供一個開放易用的軟件平臺,使軟件的持續(xù)集成變成可能。Jenkins是基于Java開發(fā)的一種持續(xù)集成工具,用于監(jiān)控持續(xù)重復的工作,功能包括:
      1)持續(xù)的軟件版本發(fā)布/測試項目;
      2)監(jiān)控外部調用執(zhí)行的工作;

      成都創(chuàng)新互聯專注于企業(yè)網絡營銷推廣、網站重做改版、平輿網站定制設計、自適應品牌網站建設、H5網站設計電子商務商城網站建設、集團公司官網建設、外貿營銷網站建設、高端網站制作、響應式網頁設計等建站業(yè)務,價格優(yōu)惠性價比高,為平輿等各大城市提供網站開發(fā)制作服務。

      對Jenkins有興趣的朋友可以參考Jenkins中文文檔

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

      1)什么是集成?

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

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

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

      3)如何高效準確的實現持續(xù)集成?

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

      二、為什么Jenkins能幫助我們進行持續(xù)集成?

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

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

      2)安裝維護簡單

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

      3)Java應用常用

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

      接下來使用的大多數軟件包都是從清華大學開源鏡像站中下載!

      三、部署安裝Gitlab

      1)安裝gitlab

      [root@jenkins ~]# yum -y install  epel-release curl openssh-server openssh-clients postfix cronie policycoreutils-python
      #安裝所需依賴
      [root@jenkins ~]# wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-12.3.5-ce.0.el7.x86_64.rpm
      #獲取gitlabRPM包
      [root@jenkins ~]# rpm -ivh gitlab-ce-12.3.5-ce.0.el7.x86_64.rpm
      #安裝gitlab軟件包
      [root@jenkins ~]# vim /etc/gitlab/gitlab.rb 
      external_url 'http://192.168.1.10'
      #修改為本機的IP地址,便于訪問
      [root@jenkins ~]# gitlab-ctl reconfigure
      #重新配置gitlab,就算不修改配置文件,也需要在安裝后重新配置gitlab
      [root@jenkins ~]# netstat -anpt | grep -w 80   
      #確定其80端口在監(jiān)聽

      2)配置gitlab

      如圖:
      Jenkins+Gitlab實現持續(xù)集成
      Jenkins+Gitlab實現持續(xù)集成

      3)生成密鑰對,便于ssh登錄

      [root@jenkins ~]# ssh-keygen -t rsa -C "1454295320@qq.com"      #生成秘鑰對
      [root@jenkins ~]# cat ~/.ssh/id_rsa.pub          #查看公鑰并復制
      ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDuyAYPbmf92Pi6OOfcbdi7BCxN+Fq1c5lc4YAQhM8420mwfT4WltUOSXUidxR2oT3ViXSxwzlOr+XoHJ4YJEeQ3jIeXr5aSwtU5YTNgvVA+SYk0uvPLJg11NdEuMkSIB2K8PJ9zSxvppKbAkynmLEyZ1n61j5NbbApjgMslUqdB10vWowSE/Xoo11ugooQH2y3GxVrSv/EMeaVkToMVFM7BWx0pLBLi+tMJpb6Aj0pOSyv5rBj0hA1+2qrPQ3DtJc4QGMK+FRyxw/N13slfmoLzZ+6bF9oyNQZNWa9isL5C80srZhF7JkCrscYMIo0hOCkYOLVGJDFSgxiceG9ZmYh 1454295320@qq.com

      接下來需在web頁面進行操作。如圖:
      Jenkins+Gitlab實現持續(xù)集成
      Jenkins+Gitlab實現持續(xù)集成

      4)創(chuàng)建一個庫

      如圖:
      Jenkins+Gitlab實現持續(xù)集成
      Jenkins+Gitlab實現持續(xù)集成
      Jenkins+Gitlab實現持續(xù)集成
      Jenkins+Gitlab實現持續(xù)集成

      5)本地服務器進行測試

      [root@jenkins ~]# git clone git@192.168.1.10:root/test01.git
      #執(zhí)行克隆操作,第一次根據提示輸入yes即可!
      [root@jenkins ~]# cd test01/
      [root@jenkins test01]# ls
      README.md
      #進入克隆的庫,查看是否與web頁面創(chuàng)建的庫的內容一致
      [root@jenkins test01]# git config --global user.name admin
      [root@jenkins test01]# git config --global user.email admin@admin.com
      #自報家門,進行簡單的聲明用戶名及郵箱地址
      [root@jenkins test01]# echo "hello world" > 123.txt
      [root@jenkins test01]# git add 123.txt 
      [root@jenkins test01]# git commit -m "commit form local first"
      #創(chuàng)建文件進行測試
      [root@jenkins test01]# git push origin master
      #將本地的測試文件推送到遠端(gitlab)

      6)gitlab驗證

      刷新頁面之后,如圖:
      Jenkins+Gitlab實現持續(xù)集成

      gitlab的配置到此先告一段落,接下來安裝Jenkins!

      四、部署安裝Jenkins

      1)安裝Jenkins

      [root@jenkins ~]# wget https://mirrors-i.tuna.tsinghua.edu.cn/jenkins/redhat/jenkins-2.172-1.1.noarch.rpm
      #獲取Jenkins軟件包
      [root@jenkins ~]# rpm -ivh jenkins-2.172-1.1.noarch.rpm 
      #安裝Jenkins
      [root@jenkins ~]# rpm -ql jenkins               #查看與Jenkins相關的文件存放的位置
      [root@jenkins ~]# sed -i 's/JENKINS_PORT="8080"/JENKINS_PORT="8081"/g' /etc/sysconfig/jenkins
      #由于gitlab的組件已經占用了8080端口,所以需要更改監(jiān)聽的端口
      [root@jenkins ~]# /etc/init.d/jenkins start               # 啟動Jenkins服務
      [root@jenkins ~]# ss -lnt | grep 8081                 #確定端口在監(jiān)聽
      LISTEN     0      50          :::8081                    :::*  

      2)Jenkins web頁面的配置

      如圖:
      Jenkins+Gitlab實現持續(xù)集成

      [root@jenkins ~]# cat /var/lib/jenkins/secrets/initialAdminPassword
      c6e0fcde793648e9b4bad088e8896897
      #查看密碼信息,并將其復制

      Jenkins+Gitlab實現持續(xù)集成
      Jenkins+Gitlab實現持續(xù)集成
      Jenkins+Gitlab實現持續(xù)集成
      由于下載其插件時間較長,所以采用另一種方法:
      等安裝完成一個插件后,將網絡斷開!下載所需軟件

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

      再次訪問web頁面,如圖:
      Jenkins+Gitlab實現持續(xù)集成
      Jenkins+Gitlab實現持續(xù)集成
      Jenkins+Gitlab實現持續(xù)集成
      Jenkins+Gitlab實現持續(xù)集成
      Jenkins+Gitlab實現持續(xù)集成
      Jenkins+Gitlab實現持續(xù)集成
      已經可以看到Jenkins的工作頁面!

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

      如圖:
      Jenkins+Gitlab實現持續(xù)集成
      Jenkins+Gitlab實現持續(xù)集成
      Jenkins+Gitlab實現持續(xù)集成
      因為采用的SSH的方式來獲取代碼,所以需要密鑰對。在gitlab上已經存放了公鑰,上圖中紅字報錯的信息就是找不到私鑰,所以接下來需要手動添加私鑰!

      [root@jenkins ~]# cat ~/.ssh/id_rsa            #查看私鑰,并復制全部內容
      -----BEGIN RSA PRIVATE KEY-----
      MIIEpAIBAAKCAQEA3uXh+36ATD8j2CQGovVpPUvIF6kFf2ei6YseQjQ6wcnpou9N
      xjhWmzJ2LKinnfS0SJ9QsuM1b7i0EJal8VyOql2H1aeQ93y/awVavN5Z5+68zgKv
      /PdDRDK9EDd5ANWP9YiTpeoXPL6aupF4BsAKpmYtQrY1ApEeDMc9KMI7cT33+MW7
      GdSRYPxHMH0NRtamEbRasJhBQbUlrDb3HpAUz0Xax9CTQzIBxLeRE/Fpq2+pG2iD
      c+LzLYEGSswX/u2QPE3uRkZFM7mit3NS/PRslzF1RuYMWNoYo9pnSCOOkWCM+Qxx
      NvIMGIkbEs5RnU/m5Y9CaycD2x6RKNcO84nYPQIDAQABAoIBAQCC893zalun8AR4
      DJpVjQbaOzaAKA4RzupYeSI61QKcLar0zdEMnrbLETd6f0+SrlxouiioIHKZg5NO
      l6NAjRdIIhEWxg6WSBURpCCuC5gYehs0kUGhxgcf/wsyhtSxV8bvAuFzvXcPeg/f
      gm1Y0eSv5CG9Kt0z99wGt9tHoe1YVm4mvvxwIDs359C3bt9SwT57xBSkC5THExdx
      Xfdtn3jGiHgQpEf/D3JS1MK+nK6B5kULKTXQUeUm2BWzKodCu38jEnoZA2ARhiZa
      ONKf7qgl6mV+5jT2iKd8Ams4F3NwOp9muCGjc1XXcO8JSnAZ1/P7QVVGv1FrHbNZ
      r9F6dSKhAoGBAPOua5XjR8bfsRyCL5ftTwGva7ND3YuhLLK72FFiIelVuoC9e6aj
      kqiC/vHnjMG/KOVG9WDDT5HE8CdaRUj5l79u+EdeQRbWn40NxhlQTNS+69x8XCYB
      zo5CFP5gd4KP1FHJig+Sujc2L2LQIiDaXhbtBMWHfMbP1Dm/9tQIO1xFAoGBAOoq
      fyUXuLX/x+GimMIPTh8Z8okeVo8t3jxE6d5hVCZ5jlb3xcVM0KCTr/sqB689TPLh
      fIYZfVRwNeJ2NpFWf8b8EK0FHnkEdwC8iBX/mNNXZou0TOCws1LfgE6UL1MXQXzL
      QuVe9RayIMM/3RjALaV6DuHsqCtolFHlLLlPx5eZAoGADnPm36H2TN5Rk95I0lr5
      16C+44f/6NsrWoJ3pwQJ/NvfzujuH4kOFr6GPnS8TXV4CHk37oBHBN9IWx0ohNaA
      4JLFWP5HIAKkven2OOQhWnDkblRV5s8uoBNdSWURUYYUUrGAZcIPF104XET58Tbi
      Y7u1D74kcWo8LRysmBDQ7H0CgYBliPHCoquL9xGzi65TDxHfuH+K5yW/RbNETNlf
      fLJhUHngyeTubSVVS1SWQp48ZQc1lYJKH0lR0Kn8vSdiE7CqFmggrcSN0trK7fTQ
      HRkmIpKrZw2iq9vFxnW7HNP8YmwZ8YTbMjZxleFQ6CM1dTcVtnw3iEdPMzSE4itn
      Wul/mQKBgQDa07lHrrHPvcNQl9xuLEoDjoMkde8QxUd7DtLgnE4UW6Uz/A4Y19if
      WkP3yimnjFKUuwaQCsFl/mnqxsSy62onaqdiEMIw/00ouWbi9v11Nl0ulLzSylkM
      QNdraUsH3BkW2fNNSKWDLAyFAr4uL5xo30SUE0oX/v6MNdaTXmZrNg==
      -----END RSA PRIVATE KEY-----

      Jenkins+Gitlab實現持續(xù)集成
      Jenkins+Gitlab實現持續(xù)集成
      Jenkins+Gitlab實現持續(xù)集成
      Jenkins+Gitlab實現持續(xù)集成
      服務器端檢測同步的數據:

      [root@jenkins ~]# ls /var/lib/jenkins/workspace/web01
      123.txt  README.md
      [root@jenkins ~]# cat /var/lib/jenkins/workspace/web01/123.txt 
      hello world

      五、配置Jenkins+gitlab實現持續(xù)自動集成

      在進行以下配置,為了快速、方便,推薦下載本人提供的插件

      配置如圖:
      Jenkins+Gitlab實現持續(xù)集成
      Jenkins+Gitlab實現持續(xù)集成
      Jenkins+Gitlab實現持續(xù)集成
      依次上傳我提供的包,順序如下:gitlab-oauth——>gitlab-plugin ——> windows-slaves ——>ruby-runtime ——>gitlab-hook即可!

      如果想要在線安裝插件,可以更改其插件來源為清華大學的Jenkins鏡像站的URL,這里附加一個更改的方法的鏈接,自行更改即可!
      修改內容如下:
      Jenkins+Gitlab實現持續(xù)集成
      修改插件地址到此為止!

      由于接下來大部分就是鼠標點點就可以了,這里只附加關鍵的圖!
      依次點擊:系統(tǒng)管理——>全局安全配置——>授權策略
      Jenkins+Gitlab實現持續(xù)集成
      依次點擊:系統(tǒng)管理——>系統(tǒng)設置
      Jenkins+Gitlab實現持續(xù)集成
      上述操作完成后,進行以下操作:
      Jenkins+Gitlab實現持續(xù)集成
      Jenkins+Gitlab實現持續(xù)集成
      在終端生成令牌并復制:

      [root@jenkins ~]# openssl rand -hex 10               #復制以下內容
      a13d2c8d22991c70a9e5

      Jenkins+Gitlab實現持續(xù)集成

      回到Gitlab的web頁面,進行如下操作:
      Jenkins+Gitlab實現持續(xù)集成
      Jenkins+Gitlab實現持續(xù)集成
      Jenkins+Gitlab實現持續(xù)集成
      Jenkins+Gitlab實現持續(xù)集成
      Jenkins+Gitlab實現持續(xù)集成

      接下來需要去Jenkins頁面找到所需的URL!如下:
      Jenkins+Gitlab實現持續(xù)集成
      Jenkins+Gitlab實現持續(xù)集成
      Jenkins+Gitlab實現持續(xù)集成
      我們需要對Jenkins的URL進行拼接大概是:Jenkins的訪問地址+/job....=身份驗證令牌碼拼接后的內容:http://192.168.1.10:8081/job/web01/build?token=a13d2c8d22991c70a9e5

      然后對到gitlab的頁面,輸入Jenkins的URL,如圖:
      Jenkins+Gitlab實現持續(xù)集成
      添加完成后,下拉頁面,進行以下操作:
      Jenkins+Gitlab實現持續(xù)集成
      Jenkins+Gitlab實現持續(xù)集成
      至此,持續(xù)部署便安裝完成了,接下來就是測試了,在終端上提交代碼到gitlab上,查看Jenkins有沒有自動同步,如下:

      #向gitlab推送新的代碼
      [root@jenkins ~]# cd test01/
      [root@jenkins test01]# echo "123456" > test.txt
      [root@jenkins test01]# git add test.txt 
      [root@jenkins test01]# git commit -m "commit form local second"
      [root@jenkins test01]# git push origin master

      Jenkins可以看到以下內容,即可說明持續(xù)部署配置完成了!
      Jenkins+Gitlab實現持續(xù)集成
      Jenkins+Gitlab實現持續(xù)集成
      Jenkins+Gitlab實現持續(xù)集成
      根據控制臺輸出的信息可以看出,代碼已經同步成功了,那么在本地查看一下!

      [root@jenkins ~]# cat /var/lib/jenkins/workspace/web01/test.txt 
      123456
      #與我們剛才提交的文件一樣

      ———————— 本文至此結束,感謝閱讀 ————————


      網站標題:Jenkins+Gitlab實現持續(xù)集成
      文章分享:http://www.ef60e0e.cn/article/pidcch.html
      99热在线精品一区二区三区_国产伦精品一区二区三区女破破_亚洲一区二区三区无码_精品国产欧美日韩另类一区
      1. <ul id="0c1fb"></ul>

        <noscript id="0c1fb"><video id="0c1fb"></video></noscript>
        <noscript id="0c1fb"><listing id="0c1fb"><thead id="0c1fb"></thead></listing></noscript>

        土默特左旗| 盐山县| 丹江口市| 镶黄旗| 伽师县| 云林县| 井研县| 江阴市| 阜平县| 宁都县| 且末县| 乌兰县| 盘山县| 东兴市| 全州县| 区。| 宿迁市| 清水河县| 山阳县| 商南县| 三穗县| 旅游| 宜兰市| 潞城市| 阜新市| 栾城县| 江川县| 墨江| 湟源县| 望江县| 灵台县| 桐庐县| 澄江县| 布拖县| 阿克苏市| 海城市| 西乡县| 仪征市| 湘阴县| 龙岩市| 临漳县|