前言:
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)。