亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么用docker+gitlab+jenkins搭建自動化部署

發布時間:2021-06-21 13:44:45 來源:億速云 閱讀:304 作者:chen 欄目:開發技術

這篇文章主要講解了“怎么用docker+gitlab+jenkins搭建自動化部署”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“怎么用docker+gitlab+jenkins搭建自動化部署”吧!

目錄
  • 前言:

  • 一、安裝Docker

  • 二、Docker 安裝Jenkins

    • 1. 搜索倉庫中的jenkins鏡像

    • 2. 通過拉取jenkins鏡像到本地images中

    • 3. 啟動jenkins容器

  • 三、登陸Jenkins的初始化操作

    • 四、全局工具配置(配置環境)

      • 五、安裝Maven插件 點擊系統管理–插件管理

        • 六、新建任務,完成自動化部署

          前言:

          通過幾天的學習和自己的理解,整理了下Docker+Jenkins的自動部署教程,如有不足,還請多多指點,謝謝!

          Docker的優點:

          Docker 讓開發者可以打包他們的應用以及依賴包到一個可移植的容器中,然后發布到任何流行的 Linux機器上,便可以實現虛擬化。Docker改變了虛擬化的方式,使開發者可以直接將自己的成果放入Docker中進行管理。方便快捷已經是Docker的最大優勢,過去需要用數天乃至數周的 任務,在Docker容器的處理下,只需要數秒就能完成。
          結構:客戶端→Docker_Host(宿主機)→倉庫
          三個概念 容器→鏡像→倉庫

          為什么使用Jenkins:

          傳統的部署項目,當項目完成后,需要我們自己從代碼倉庫中拉取代碼到本地,完成打包,然后上傳到服務器,然后配置項目的運行環境并啟動。這樣顯然有一點的缺陷,我們在開發中存在的一些bug由于不能即時的發現,導致后期修復bug而存在導致連鎖效應的風險。而且我們經常修改代碼后,需要重新打包,然后上傳到服務器,然后運行,當項目很多的時候,這樣的一些重復性機械操作導致我們有些力不從心。
          而我們使用Jenkins后真正的幫我們實現了自動化部署,當我們代碼更新后,push到代碼倉庫中,我們只需在Jenkins的可視化界面點擊構建項目,Jenkins便會根據我們配置的倉庫地址自動拉取代碼,自動打包,并運行,完成自動化部署。


          一、安裝Docker

          Docker 要求 CentOS 系統的內核版本在 3.10以上 ,查看本頁面的前提條件來驗證你的CentOS 版本是否支持 Docker。

          1. 通過 uname -r 命令查看你當前的內核版本

          uname -r

          2. 使用 root 權限登錄 Centos。確保 yum 包更新到最新。

          yum -y update

          3. 卸載舊版本(如果安裝過舊版本的話)

          yum remove docker docker-common docker-selinux docker-engine

          4. 安裝需要的軟件包, yum-util 提供yum-config-manager功能,另外兩個是devicemapper驅動依賴的

          yum install -y yum-utils device-mapper-persistent-data lvm2

          5. 設置yum源

          yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

          6. 可以查看所有倉庫中所有docker版本,并選擇特定版本安裝

          yum list docker-ce --showduplicates | sort -r

          7. 安裝docker

          sudo yum install -y docker-ce     #由于repo中默認只開啟stable倉庫,故這里安裝的是最新穩定版18.03.1

          8. 啟動并加入開機啟動

          systemctl start docker     //啟動docker
          systemctl enable docker    //設置為開機啟動

          9. 驗證安裝是否成功(有client和service兩部分表示docker安裝啟動都成功了)

          docker version

          二、Docker 安裝Jenkins

          1. 搜索倉庫中的jenkins鏡像

          docker search jenkins

          jenkins    表示你要搜索的鏡像名,DESCRIPTION中包含jenkins的也會顯示出來

          2. 通過拉取jenkins鏡像到本地images中

          docker pull jenkins/jenkins
          注意這里拉取的是jenkins/jenkins版本,因為先前的jenkins版本只有2.60,導致安裝jenkins插件失敗拉取的時候可以指定版本,例如docker pull java:8 表示拉取的java版本為8; 不指定版本則默認為最新版本 latest

          3. 啟動jenkins容器

          docker run --name myjenkins -d -p 8081:8080 -p 8085:8085 jenkins/jenkins

          –name myjenkins    指定容器NAME為myjenkins
          -d    表示后臺運行
          -p 8081:8080    表示Docker Host(運行Docker的主機)端口 與Docker容器內運行的端口映射,
                                      8081表示DockerHost的端口,8080即容器內的端口; 外部訪問8081即可訪問到Docker容器的8080端口
          jenkins/jenkins    表示啟動的鏡像為jenkins/jenkins ,查看本地鏡像可以通過docker images查看

          說明:
              1.容器內的端口外部無法直接訪問,因為要配置Docker Host與容器的端口映射,映射可以配置多個;
          由于后面需要部署項目,提前把項目的端口號-p 8085:8085配置好,不配置的也可以,后面去修端口映射文件即可。
               2.其實我們也可以省略第二步pull操作,直接啟動一個容器,Docker會先去本地images中查看是否有這個鏡像,如果沒有的話會去DockerHub倉庫去下載。


          三、登陸Jenkins的初始化操作

          1. 訪問jenkins界面,例如我虛擬機IP是192.168.199.188 ,輸入192.168.199.188:8081,回車顯示以下界面

          怎么用docker+gitlab+jenkins搭建自動化部署

          進入安裝Jenkins的容器內

          docker exec -it myjenkins bash        // 進入指定容器,myjenkins表示我們啟動容器時給容器指定的名稱
          cat /var/jenkins_home/secrets/initialAdminPassword`       //查看密碼,復制密碼粘貼到文本框內

          操作圖示:

          怎么用docker+gitlab+jenkins搭建自動化部署

          2. 安裝插件,這里就安裝jenkins推薦的插件

          點擊安裝推薦插件:

          怎么用docker+gitlab+jenkins搭建自動化部署

          3. 自動安裝中,需要稍等片刻,安裝完成點擊繼續:

          怎么用docker+gitlab+jenkins搭建自動化部署

          4. 創建管理員用戶,也可以直接使用admin賬戶繼續:

          怎么用docker+gitlab+jenkins搭建自動化部署

          5. 實例配置 直接保存完成:

          怎么用docker+gitlab+jenkins搭建自動化部署

          6. 開始使用Jenkins:

          怎么用docker+gitlab+jenkins搭建自動化部署

          7. 進入Jenkins主頁:

          怎么用docker+gitlab+jenkins搭建自動化部署

          四、全局工具配置(配置環境)

          點擊系統管理–全局工具配置

          1. 配置JDK: 取消自動安裝(一般容器內都安裝好了JDK環境), 進入docker容器,使用echo $JAVA_HOME 獲取jdk安裝路徑,將路徑復制到JAVA_HOME文本框

          怎么用docker+gitlab+jenkins搭建自動化部署

          2. 配置Maven: 指定name,自動安裝,點擊Save即可

          怎么用docker+gitlab+jenkins搭建自動化部署

          五、安裝Maven插件 點擊系統管理–插件管理

          怎么用docker+gitlab+jenkins搭建自動化部署

          六、新建任務,完成自動化部署

           1. 回到首頁,點New 任務,構建一個Maven項目

          怎么用docker+gitlab+jenkins搭建自動化部署

          2. 點擊確定,回到首頁我們發現多了一個名為SpringBoot_AutoTest1的任務(上面的任務是以前的,不用理會)

          怎么用docker+gitlab+jenkins搭建自動化部署

          3. 點擊項目名SpringBoot_AutoTest1 --> 點擊配置

          3.1 源碼管理(配置git倉庫地址,Jenkins會從遠程倉庫拉取代碼):

          怎么用docker+gitlab+jenkins搭建自動化部署

          3.2 構建配置(Jenkin拉取代碼后會自動執行打包命令):

          怎么用docker+gitlab+jenkins搭建自動化部署

          3.3 配置shell腳本(Jenkins打包完成后,自動執行shell腳本啟動項目,實現自動化部署),最后保存即可:

          怎么用docker+gitlab+jenkins搭建自動化部署

          附shell腳本:

          #!/bin/bash
          # #!/bin/bash是指此腳本使用/bin/bash來解釋執行。其中,#!是一個特殊的表示符,其后,跟著解釋此腳本的shell路徑。bash只是shell的一種,還有很多其它shell,如:sh,csh,ksh,tcsh,...
          # #!/bin/bash只能放在第一行,如果后面還有#!,那么只能看成是注釋。
          
          #服務名稱
          
          SERVER_NAME=SpringBoot_AutotTest
          
          #源jar路徑,mm打包完成之后,target目錄下的jar包名稱,也可選擇成為war包,war包 可移動到Tomcat的。
          JAR_NAME=jekins-0.0.1-SNAPSHOT
          
          
          #target打包生成jar包的目錄
          
          JAR_PATH=/var/jenkins_home/workspace/SpringBoot_AutotTest/target    # 以具體的打包位置為準,可以先構建一次項目,通過日志查看打包的目錄
          
          #打包完成之后,把iar包移動到運行jar包的目錄
          JAR_WORK_PATH=/var/jenkins_home/workspace/SpringBoot_AutotTest/target
          
          echo "查詢進程id-->$SERVER_NAME"
          PID=`ps -ef | grep "$SERVER_NAME" | awk '{print $2}'`
          echo"得到進程ID: $PID"
          echo"結束進程"
          for id in $PID
          do
          kill -9 $id
          echo "killed $id" 
          done
          echo"結束進程完成"
          
          #復制jar包到執行目錄_
          
          echo" 復制jar包到執行目錄:cp $JAR_PATH/$JAR_NAME.jar $JAR_WORK_PATH"
          cp $JAR_PATH/$JAR_NAME.jar $JAR_WORK_PATH
          echo"復 制jar包完成"
          cd $JAR_WORK_PATH
          #修改文件權限
          chmod 755 $JAR_NAME.jar
          
          #前臺啟動
          #java -jar $JAR_NAME.jar
          
          #后臺啟動
          BUILD_ID=dontKillMe nohup java -jar $JAR_NAME.jar &

          感謝各位的閱讀,以上就是“怎么用docker+gitlab+jenkins搭建自動化部署”的內容了,經過本文的學習后,相信大家對怎么用docker+gitlab+jenkins搭建自動化部署這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

          向AI問一下細節

          免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

          AI

          红安县| 修武县| 同仁县| 古田县| 辉县市| 上饶市| 镇江市| 沙河市| 元朗区| 东明县| 固阳县| 文山县| 土默特左旗| 淅川县| 尖扎县| 镶黄旗| 电白县| 五华县| 阳山县| 德保县| 江陵县| 井冈山市| 大余县| 福清市| 汨罗市| 吉水县| 益阳市| 池州市| 额尔古纳市| 大名县| 马关县| 繁昌县| 乌兰察布市| 兴海县| 慈利县| 正镶白旗| 长白| 海南省| 阿坝| 增城市| 贵南县|