欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Spring Boot Jar 包部署脚本的实例讲解

程序员文章站 2022-03-02 10:15:18
当使用 spring boot 进行开发时,它可以将项目打包成 jar 包进行部署,但是我们的部署环境一般都是 linux,每次手写脚本很烦人,所以我提供了一个简单的脚本,用于部署 spring bo...

当使用 spring boot 进行开发时,它可以将项目打包成 jar 包进行部署,但是我们的部署环境一般都是 linux,每次手写脚本很烦人,所以我提供了一个简单的脚本,用于部署 spring boot 生成的 jar 包。

脚本内容很简单,就是通过端口 kill 掉旧的进程,并将新的 jar 包部署上去。

#!/bin/bash
port=8090
jar_name="上传到服务器上的 jar 包名称"
deployed_jar="服务器上部署的 jar 包名称"
# spring boot 的 profile
active_profile=real
# 备份目录
backup_folder="/home/backup"
#根据端口号查询对应的pid
pid=$(netstat -nlp | grep :$port | awk '{print $7}' | awk -f"/" '{ print $1 }');
#杀掉对应的进程
if [  -n  "$pid"  ];  then
    kill  -9  $pid;
fi
echo "服务已停止"
echo "备份文件:"
timestamp=`date "+%y%m%d%h%m%s"`
if [ ! -d "${backup_folder}" ]
then
  mkdir -p "${backup_folder}"
fi
mv ${deployed_jar} ${backup_folder}/${deployed_jar}-${timestamp}.jar
mv ${jar_name} ${deployed_jar}
nohup java -jar ${deployed_jar} --spring.profiles.active=${active_profile} &
echo "服务已启动"

知识点扩展:

springboot的jar包部署shell脚本

#!/bin/sh
id=`ps -ef|grep scada-server-report-smt-0.0.1-snapshot.jar|grep -v grep|awk '{print $2}'`
echo $id
echo "---------------"
if [ -z $id ]; then
	echo "无杀死的进程"
else
	for id in $id
	do
	kill -9 $id
	echo "killed $id"
	done
fi
sleep 5
nohup java -xms512m -xmx512m -jar scada-server-report-smt-0.0.1-snapshot.jar > /dev/null 2>&1 &
echo "启动成功"

到此这篇关于spring boot jar 包部署脚本的实例讲解的文章就介绍到这了,更多相关spring boot jar 包部署脚本内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!