项目部署
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