shell自动部署springboot项目脚本

目的

项目自动部署的脚本用于方便我们将war包上传到服务器以后自动部署项目,少敲命令,避免出现项目没有备份、启动失败等情况。

步骤

  1. 获取服务器端项目的进程
  2. 杀死该进程
  3. 获取当前时间
  4. 备份之前的war包
  5. 将最新上传的war包从上传目录移动到项目启动目录
  6. 启动项目
  7. 打开日志查看项目是否启动成功

代码如下

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#获取服务器端项目的进程
tpid=`ps aux | grep -c xxx.war`
#杀死该进程
kill -9 $tpid
#获取当前时间
current=`date "+%Y-%m-%d%H:%M:%S"`
#备份之前的war包
mv /opt/war/xxx.war /opt/war/history/xxx.war+"$current"
#将最新上传的war包从上传目录移动到项目启动目录
mv ~/xxx.war /opt/war/xxx.war
#启动项目
nohup java -jar ./xxx.war >/dev/null 2>&1 &
currentDate=`date "+%Y-%m-%d"`
#打开日志查看项目是否启动成功
tail -f -n 100 /data/logs/vinka/logFile."$currentDate".log