1. 程式人生 > >Jenkins自動打包部署專案

Jenkins自動打包部署專案

個人下載是長期穩定的那個版本,下載後,得到一個.msi的安裝包:

點選進行安裝,然後一直點選下一步。

jenkins會自動佔用8080埠,如果這個埠不希望被jenkins佔用,可以去資料夾裡的這個檔案進行修改:

修改後,需要去服務裡面進行jenkins的重啟:

在開啟瀏覽器介面的時候,會有一步提示輸入密碼,上面有一個路徑,可以去那個檔案裡面找到對應的password:複製,貼上到輸入框內,然後開始下一步,最後面是安裝外掛(plugins),我一般選擇第一個安裝,最好是FQ後安裝,不然會出現很多超時的事情,導致的安裝失敗。然後後,jenkins會自動重啟,然後註冊一個新的使用者:

下面開始進入配置的過程:

一、安裝必要的外掛:

搜尋下載以下外掛(Maven Integration plugin 、Publish Over SSH、Deploy to container Plugin)

 

外掛安裝完成後,等待jenkins重啟;

二、JDK,Maven等環境變數設定:

配置這3個,然後點選儲存;

三、配置伺服器引數及git相關引數:

 

這裡可以配置使用金鑰,也可以使用伺服器賬號密碼

 

注意:私鑰獲取途徑a) 若已裝有git環境,右鍵桌面git GUI here----- help ----- show SSH key

         b)  自己百度一下。

最後需要將本機的私鑰拷貝到伺服器中:

讓儲存,上傳到伺服器。

配置完後,在jenkins中點選一下test Configuration ,出現Sucess,便是成功。

四:構建專案

點選新建,然後構建一個maven專案,如果沒有這個選項,請確認外掛是否都安裝成功了。

 

然後進行專案的配置:

 

點選一下add按鈕,把你getlab的登入資訊寫入進去,然後就可以選擇了。

clean package -Dmaven.test.skip=true -P test-10140    這裡可以使用maven配置的多環境配置檔案

紅框框下面的內容依次是:

1、打包生成的war包的位置

2、war包的字首

3、伺服器指令碼存放的路徑

4、指令碼命令

最後點選儲存。

在專案構建之前,需要將tomcat配置好,還有相對應的指令碼命令

看一下指令碼命令:


#!/bin/bash
#filename deploy-api.sh
set -x
export JAVA_HOME=/opt/jdk1.7.0_80
export TOMCAT_HOME=/opt/apache-tomcat-test-jxpt-10000
api_pid=$(ps -ef|/opt/apache-tomcat-test-jxpt-10000|grep server-test|awk '{print $2}')
for temp_pid in ${api_pid}
do 
    kill -9 ${temp_pid}
done
war_file="/home/ucmed/jenkins/root/ROOT.war"
if [ -f "$war_file" ];
then
    echo "War file exists, deploy and start the server."
    
    #backup flows folder
#    cd ~/rubik
#    rm -rf rubik-server-test-flows-bak
#    mkdir rubik-server-test-flows-bak
#    cp -rf ${TOMCAT_HOME}/webapps/ROOT/WEB-INF/flows ~/rubik/rubik-server-test-flows-bak
    
    rm -rf ${TOMCAT_HOME}/webapps/ROOT/
    rm -f ${TOMCAT_HOME}/webapps/ROOT.war
    mv -f ${war_file} ${TOMCAT_HOME}/webapps/ROOT.war
    rm -rf ${war_file}
    #Manually extract war file
    #unzip ${war_file} -d ${TOMCAT_HOME}/webapps/ROOT/ 

    #    rm -rf ${TOMCAT_HOME}/webapps/ROOT/WEB-INF/flows

    #copy the backup flows into TOMCAT
#    mv -f ~/rubik/rubik-server-test-flows-bak/flows ${TOMCAT_HOME}/webapps/ROOT/WEB-INF 
    
    
else
    echo "War file not exists, restart the server."
fi

cd ${TOMCAT_HOME}/bin
chmod 777 *.sh

set +x

/bin/bash ${TOMCAT_HOME}/bin/startup.sh

最後,點選專案→立即構建

 

等待構建完成,出現sucess,這個時候,你會發現,你的專案已經部署完成