前言:
1、在部署前呢,首先,自己要了解整套分佈式項目的組成部分;就比如,我管理的項目有很多“服務提供者”、“服務消費者”。只有非常熟悉它們之間的關係,你才能知道如何部署。
2、熟悉MAVEN管理項目,MAVEN jar包依賴關係。我的Jenkins利用maven打包結構如下,打好的jar(war)都放在每個項目的target下。
一、創建maven工程
1.
2.
3.
4.
5.
6.注意:界面下有修改登錄端口號的port。
7.
8.shell腳本,根據自己的開發項目結構與部署情況,自己調整。
#!/bin/bash
export JAVA_HOME=/home/java/jdk1.8.0_181
#防止jenkins構建完成後殺死tomcat進程
export BUILD_ID=dontKillMe
#tomcat路徑
TOMCAT_PATH=/home/tomcat/tomcat-8-7000
#替換掉的war包名
WAR_NAME=test-service
#查詢tomcat進程id
TID=`ps -ef|grep $TOMCAT_PATH |grep -v 'grep\|tail\|less\|more' |awk '{print $2}'`
#進程id不爲空
#[]中必須保留前後空格,格式要求
if [ ! -n "$TID" ]; then
echo "Tomcat沒有運行"
else
for id in $TID
do
kill -9 $id;
echo "Tomcat進程$id被殺死";
sleep 8s;
done
fi
rm -rf $TOMCAT_PATH/webapps/$WAR_NAME*
echo "複製war到webapps下"
cd /home/tomcat/war
cp -f ./$WAR_NAME.war $TOMCAT_PATH/webapps
sleep 5s
echo "啓動tomcat"
cd /
$TOMCAT_PATH/bin/startup.sh
二、點擊"保存"後,會返回構建項目管理頁面,點擊"立即構建"就可以實現自動下載代碼、編譯、依賴、打包、遠程發佈、遠程啓動,自動完成這一系列的流程。
三、未完待續,敬請期待:遠程發佈項目,以jar包方式啓動服務(不需要tomcat)。