jenkins部署spring boot项目

2 篇文章 0 订阅
1 篇文章 0 订阅

jenkins部署spring boot跟以前部署到tomcat和 weblogic有点不一样,之前是已经有服务器在运行可以利用服务器的远程部署来完成,spring boot是内嵌服务器,所以需要通过jenkins的ssh插件将jar包发送到应用服务器,再通过linux脚本来启动服务器。

结构图例:

详细步骤:

第一步:先配置jenkins的ssh插件Publish Over SSH

 系统管理---插件管理 ,安装ssh插件

配置如下:

remoto directory这个路径的意思是目标服务器上,你选取一个路径作为远程操作的跟路径,后续传输文件的路径都是相对于这个根路径来定位,以前就在这里碰到了这个坑,后来用/来表示。后面的路径就是按照实际填写。

第二步:创建maven项目

基本代码配置跟上篇的tomcat部署方式差不多,这里不再重复,有疑问可以翻阅上篇 jenkins+svn+ant+weblogic/tomcat持续化集成部署

这里打包方式是采用的maven来编译打包,配置如下

clean install -Dmaven.test.skip=true -Ptest

配置编译后ssh服务

附上使用的脚本

DATE=$(date +%Y%m%d)
export JAVA_HOME=/usr/jdk1.8
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$CLASSPATH
DIR=/usr/local/app/leaf6-epbd
JARFILE=leaf6-epbd-rest-1.0.jar

if [ ! -d $DIR/backup ];then
   mkdir -p $DIR/backup
fi
cd $DIR

ps -ef | grep $JARFILE | grep -v grep | awk '{print $2}' | xargs kill -9
mv  $JARFILE backup/$JARFILE$DATE
mv -f /usr/local/jenkins-app/$JARFILE .

java -jar $JARFILE > out.log &
if [ $? = 0 ];then
        sleep 30
        tail -n 50 out.log
fi

cd backup/
ls -lt|wak 'NR>5{print $NF}'|xargs rm -rf

脚本大概意思讲解:

DIR是服务器部署文件夹

/usr/local/jenkins-app是接收到jar包的文件夹

先将服务器线程杀死,停止服务器

然后将原来的包备份到backup文件夹中

最后将传出到服务器的jar包放到部署文件夹中,启动服务

删除历史备份,最新的几个

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值