Jenkins 部署SpringBoot项目的简单shell脚本
脚本内容:
#!/bin/bash #export BUILD_ID=dontKillMe这一句很重要,这样指定了,项目启动之后才不会被Jenkins杀掉。 export BUILD_ID=dontKillMe # 防止rm 时候参数变量为空 cd /tmp/ #最终打包安装的jar包库路径,包括了依赖其他快照jar包(依赖的jar应该不需要删除) #mvn_jar_path=/mvn/libspace/com/middol/ #指定最后编译好的jar存放的位置 www_path=/usr/local/kevin/tools/jenkins/jenkins-maked-jars #Jenkins中编译好的jar位置(需要改) jar_path=/root/.jenkins/workspace/jenkins-maven/target #Jenkins中编译好的jar名称 jar_name=kevin-utils-1.0-SNAPSHOT.jar #获取运行编译好的进程ID,便于我们在重新部署项目的时候先杀掉以前的进程 pid=$(cat /usr/local/kevin/tools/jenkins/run.pid) #杀掉以前可能启动的项目进程 #kill -9 ${pid}
if [ -n "$pid" ]; then
kill -9 $pid;
fi
#先进入mvn打包安装的路径删除依赖包 cd ${mvn_jar_path} #先删除原来的jar文件,主要目的是删除依赖的快照包(依赖的jar应该不需要删除) #rm -rf /mvn/libspace/com/middol/* #进入最后指定存放jar的位置 cd ${www_path} #先删除原来的jar文件 rm -rf ./${jar_name} #进入指定的编译好的jar的位置 cd ${jar_path} #将编译好的jar复制到最后指定的位置 cp ${jar_path}/${jar_name} ${www_path} #进入最后指定存放jar的位置 cd ${www_path} #启动jar,指定SpringBoot的profiles为dev,后台启动 java -Xms1024m -Xmx1024m -jar -Dspring.profiles.active=dev ${jar_name} & #将进程ID存入到run.pid文件中 echo $! > /usr/local/kevin/tools/jenkins/run.pid
指导: