jenkins+git+maven+tomcat 實現自動打包部署

摳腳怪獸發表於2019-02-22

jenkins+git+maven+tomcat 實現自動打包部署

一、安裝JDK

  • 進入官網下載jdk,我使用的是jdk1.8
    在這裡插入圖片描述
    https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

  • 配置環境變數
    修改/etc/profile檔案 vi /etc/profile
    在檔案末尾新增

    export JAVA_HOME=/usr/local/jdk/jdk1.8.0_201                 #配置jdk解壓後存放路徑
    export JRE_HOME=$JAVA_HOME/jre                   			 #配置jre
    export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin   			 #配置PATH,中間用:隔開
    
  • 儲存檔案後,執行source /etc/profice使修改生效

  • 執行java -version命令檢視是否安裝成功,出現jdk版本號證明安裝成功

二、安裝maven

export MAVEN_HOME=/usr/local/maven/apache-maven-3.6.0		#配置maven解壓後的檔案地址
在PATH後面追加上:$MAVEN_HOME/bin
  • 儲存檔案後,執行source /etc/profice使修改生效
  • 執行mvn -version命令檢視是否安裝成功,出現maven版本號證明安裝成功

三、安裝git

  • 下載git
    yum -y install git

  • 執行git --version 命令檢視是否安裝成功,出現git版本號證明安裝成功

四、安裝jenkins 並使用

  • 從官網下載war包
    在這裡插入圖片描述
    下載地址:https://jenkins.io/download/;下載的是2.165版本

  • 將war包放到tomcat並執行,訪問地址tomcat地址,解鎖Jenkins
    在這裡插入圖片描述
    首次進入是這個頁面,管理員密碼在紅色字型得對應得路徑檔案中,獲取內容後貼上過去就可以
    cat /root/.jenkins/secrets/initialAdminPassword

  • 自定義Jenkins ,安裝外掛
    在這裡插入圖片描述
    推薦選擇安裝推薦外掛,選擇安裝推薦外掛後,就進入下載外掛頁面等待十分鐘左右就會進入主頁面

  • 建立管理員使用者
    下載完之後會出現建立管理員使用者頁面,用於之後訪問Jenkins的使用者,建立完之後就可以進入Jenkins主頁面了
    在這裡插入圖片描述

  • 配置jdk、Maven、GIt
    開啟系統管理→全域性工具配置

    在這裡插入圖片描述
    配置jdk
    自動安裝不選中,name隨便填寫,JAVA_HOME填寫JDK的安裝路徑

    在這裡插入圖片描述
    配置Maven
    自動安裝不選中,name隨便填寫,MAVEN_HOME新增Maven的安裝路徑

    在這裡插入圖片描述
    配置git
    name隨便填寫,Path to Git executable填寫git應用,如果引用上面的方式下載的git預設地址在/usr/bin/git
    在這裡插入圖片描述
    配置完所有資訊後點選儲存

  • 安裝所需外掛
    點選系統管理→外掛管理。
    在這裡插入圖片描述
    點選可選外掛,在搜尋框搜尋,然後選中點選直接安裝即可
    需要安裝兩個外掛。ssh連線外掛:publish over ssh;建立maven專案所用外掛:Maven Integration
    在這裡插入圖片描述

  • 配置ssh連線資訊
    在配置ssh連線資訊之前需要配置git並生成一個git金鑰,然後git上新增此金鑰。在伺服器執行命令
    配置git
    git config --global user.name “使用者名稱”
    git config --global user.email “登入使用者郵箱”
    生成git金鑰
    ssh-keygen -t rsa -C’git登入使用者名稱’
    執行完此命令後按三下回車
    生成完金鑰後進入~/.ssh目錄,會有一個id_rsa和id_rsa.pub檔案
    檢視id_rsa.pub檔案,將檔案內容複製到自己的git上的SSH金鑰上並新增。下面可以配置ssh連線了

    點選系統管理→系統設定。
    在這裡插入圖片描述
    下滑到Publish over SSH配置的地方,在SSH Servers點選新增,右下角位置點選高階,選中Use password authentication, or use a different key
    在這裡插入圖片描述


    Passphrase:這個密碼是指生成git金鑰的密碼,我們們生成git金鑰的時候沒有新增密碼所以填空就可以
    Path to key:這個是指git生成的位置。這個可以不用填,直接將id_rsa檔案內容填進下面的key中
    Key:這個是指git金鑰內容,將id_rsa這個檔案內容填進即可。此資訊和Path to key必須填一個!!
    Name:是指建立的名稱,可以隨便填寫
    Hostname:是指伺服器連線地址
    Username:是指伺服器登入使用者名稱
    Remote Directory:要存放東西的伺服器目錄, 這裡填寫tomcat 的部署目錄webapps
    Passphrase / Password:是指伺服器連線密碼
    將所有資訊填寫完畢之後點選最下方的Test configuration,如果出現success字樣代表連線伺服器成功,點選儲存

  • 新建maven專案
    之前把所有的配置資訊均已配置好,下面就要新建一個maven專案
    點選新建任務,選擇構建一個maven專案,任務名稱隨便填寫
    在這裡插入圖片描述


    配置原始碼管理
    首先點選新增→Jenkins
    在這裡插入圖片描述
    填寫git的登入使用者名稱和登入密碼,填完之後點選新增
    在這裡插入圖片描述
    Repository URL:git專案地址
    Credentials:選擇剛剛新增的Jenkins
    Branch Specifier (blank for ‘any’):選擇所要pull的git分支


    構建觸發器
    選擇GitHub hook trigger for GITScm polling即可,也可以設定定時任務
    在這裡插入圖片描述
    Build構建
    Goals and options是指maven的清空和打包命令,-P是選擇對應的pom檔案配置的環境,不填就會選擇預設的
    在這裡插入圖片描述
    構建後操作
    首先在選項卡中選擇Send build artifacts over SSH
    在這裡插入圖片描述
    下面配置SSH Publishers
    在這裡插入圖片描述
    Name:此項就是之前配置ssh連線資訊的名字
    Source files:此項填寫傳到伺服器的檔案 一般是jar或war
    Remove prefix:此項是指當把war/jar包傳到伺服器的時候去掉source files處填寫的war包之前的路徑,要是不去除的話會在tomcat的webapps建一個target資料夾,war包則在target資料夾下面
    remove directory:此項是指遠端到伺服器的目錄 這個在這就不配置了 因為我們在系統設定處已經配置 這邊直接呼叫就可以
    exec command:此項是指傳過去包之後執行的命令,這裡也可以呼叫指令碼,我這邊是直接執行的指令碼,下面會將指令碼放上


    到此建立maven專案均已完成點選儲存即可

五、執行任務

  • 進入首頁
    進入首頁就會看見剛剛所建立的專案,點選右邊的按鈕就會執行,然後可以在左側檢視控制檯的輸出。
    執行任務
    在控制檯裡面檢視日誌,如果最後出現SUCCESS則代表自動部署成功!!!
    部署之後的控制檯輸出

此時可以去到專案所在的tomcat檢視war包和執行狀態等等
war包
成功執行

執行指令碼

#! /bin/sh
echo '####################開始自動部署####################'
export JAVA_HOME=/usr/local/jdk1.8.0_201
tomcatPath=/root/test_tomcat #指定tomcat檔案目錄名稱
cd $tomcatPath/bin #進入tomcat的bin目錄
PID=$(ps -fu `whoami`|grep tomcat|grep -v grep|awk '{print $2}')
if [ -z "$PID" ];then
 echo "no tomcat process"
else
./shutdown.sh #停止tomcat服務
fi
./startup.sh #啟動tomcat服務
echo '####################部署結束####################'

需要修改tomcat檔案目錄和jdk目錄
指令碼檔案儲存之後需要給此檔案賦予可執行的許可權!!
chmod +x xxx.sh

相關文章