项目部署

1.首先将SpringBoot项目打包成JAR包,然后通过FTP工具上传到Linux,执行如下命令:

java -jar xxx.jar &

该命令执行后,启动jar,一旦shell窗口关闭后,JAR就停止运行了.

若需要项目在后台一直运行,需要通过如下命令启动JAR:

nohup java -jar xxx.jar > console.log 2 > &1 &

上述 2 和 1 的含义如下:

0 标准输入 (一般是键盘)

1 标准输出 (一般是显示屏,是用户终端控制台)

2 标准错误 (错误信息输出)

上述 console.log 为日志文件,需要在Linux中提前创建:

touch console.log

查看项目运行日志

1.实时跟踪日志:

tailf console.log | grep --line-buffered findAll

实时跟踪日志,只要执行findAll这个方法,就会将其对应的日志打印出来,用来跟踪特定的日志运行.

--line-buffered 是一行的缓冲区,只要这一行的缓冲区满了就会打印出来,所以可以用于实时监控日志.

2.tailf -n 200 console.log 打印最后200行日志,并持续跟踪日志.

tail -n 500 console.log | more 分页查看最后500行日志.

编写Shell脚本执行JAR

1.编写一个shell脚本,命名为 start_JAR.sh,脚本和可执行JAR放在同一目录下.

#!/bin/sh
JAR_NAME=Xxx-0.0.1-SNAPSHOT.jar
 
tpid=`ps -ef|grep $JAR_NAME|grep -v grep|grep -v kill|awk '{print $2}'`
if [ ${tpid} ]; then
echo 'Stop Process...'
kill -15 $tpid
fi
sleep 5
tpid=`ps -ef|grep $JAR_NAME|grep -v grep|grep -v kill|awk '{print $2}'`
if [ ${tpid} ]; then
echo 'Kill Process!'
kill -9 $tpid
else
echo 'Stop Success!'
fi
 
tpid=`ps -ef|grep $JAR_NAME|grep -v grep|grep -v kill|awk '{print $2}'`
if [ ${tpid} ]; then
    echo 'App is running.'
else
    echo 'App is NOT running.'
fi
 
rm -f tpid
nohup java -jar ./$JAR_NAME --spring.profiles.active=test &
echo $! > tpid
echo Start Success!

2.执行 start_JAR.sh 脚本,启动可执行JAR.

添加可执行权限:

chmod +x start_JAR.sh

执行脚本:

./start_JAR.sh