亲宝软件园·资讯

展开

Spring Boot Jar 包部署脚本

javaroad 人气:0

当使用 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 "启动成功"

加载全部内容

相关教程
猜你喜欢
用户评论