jekins 部署springboot 脚本

Posted 啦啦拉扎尔

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jekins 部署springboot 脚本相关的知识,希望对你有一定的参考价值。

#!/bin/bash
echo "stop SpringBoot "
pid=`ps -ef | grep ejoyst-bappapi-gateway.jar | grep -v grep | awk ‘{print $2}‘`  #查找进程并输出端口号
echo “旧应用进程id:$pid”
if [ -n "$pid" ]    #判断pid是否存在切非0
then
kill -9 $pid  #强制终止进程
fi

export JAVA_HOME=/usr/java/jdk1.8.0_161

echo ${JAVA_HOME}

echo "授权当前用户"

chmod 777 /opt/deploy/ejoyst-bappapi-gateway.jar

echo "执行...."

cd /opt/deploy/

nohup ${JAVA_HOME}/bin/java -jar ejoyst-bappapi-gateway.jar > /dev/null &

echo "启动成功"
 
nohup和&

使用&后台运行程序:

  • 结果会输出到终端

  • 使用Ctrl + C发送SIGINT信号,程序免疫

  • 关闭session发送SIGHUP信号,程序关闭

使用nohup运行程序:

  • 结果默认会输出到nohup.out

  • 使用Ctrl + C发送SIGINT信号,程序关闭

  • 关闭session发送SIGHUP信号,程序免疫

平日线上经常使用nohup和&配合来启动程序

  • 同时免疫SIGINT和SIGHUP信号

同时,还有一个最佳实践:

  • 不要将信息输出到终端标准输出,标准错误输出,而要用日志组件将信息记录到日志里

 

以上是关于jekins 部署springboot 脚本的主要内容,如果未能解决你的问题,请参考以下文章

jekins集成部署

使用Jekins自动构建项目(GitLab+Java Maven)

SpringBoot项目如何进行打包部署

SpringBoot项目如何进行打包部署

SpringBoot项目如何进行打包部署

SpringBoot项目如何进行打包部署