linux环境后台运行、重启springboot jar包脚本命令

作者: ʘᴗʘ发布时间:2021-10-15 15:28 浏览量:291 点赞:208 售价:0

linux后台运行jar包脚本命令

在linux环境下,通过nohup &命令来后台运行jar包,并通过命令参数来设置springboot的profile,代码如下:

nohup java -jar blog-v2.jar --spring.profiles.active=server >/dev/null 2>&1 &

其中,blog-v2.jar是jar包的名称。--spring.profiles.active=server是设置springboot的profile。>/dev/null 2>&1是把springboot的控制台输出(比如System.out.println)打印到一个不存在的路径上,这样做是为了执行该脚本后避免还得多次回车才能退出。

linux自动杀死jar进程并重启命令

日常部署中,我们最常用的操作就是kill -9杀死当前jar包进程,然后重启。命令如下:

PidArr=`ps -ef|grep blog-v2.jar|grep -v 'color'|grep -v 'grep' |awk '{print $2}'`
for PID in $PidArr; do
    if [ $PID -ge 0 ]
    then
        echo "jar pid is:$PID, ready kill jar"
        kill -9 $PID
    else
        echo "jar is not running, ready start it"
    fi
done
nohup java -jar blog-v2.jar --spring.profiles.active=server >/dev/null 2>&1 &

其中,blog-v2.jar是jar包的名称。代码的大概意思是,通过ps grep命令查找到当前正在运行的jar包进程,然后kill -9杀死进程,然后使用nohup重新运行该jar包。

整合git,实现推送git自动重启

思路是通过gitlab或者github的webhook,每次commit,gitlab都会发起一次http请求,请求设置的webhook。在服务器上启动一个nginx接收该请求,每次收到请求就重新从git上clone代码,然后执行上面的重启命令。

其中,nginx收到请求后,可以通过lua脚本来执行sh脚本,代码如下:

location /my-website {
  content_by_lua_block {
    os.execute("/bin/myShellScript.sh")
  } 
}

版权声明:《linux环境后台运行、重启springboot jar包脚本命令》为CoderBBB作者「ʘᴗʘ」的原创文章,转载请附上原文出处链接及本声明。

原文链接:https://www.coderbbb.com/articles/17

其它推荐:

user

ʘᴗʘ

77
文章数
67945
浏览量
53886
获赞数
67.80
总收入