Java部署Linux快速启动方式(sh文件)

        Java项目会被打成jar的方式部署在Linux服务器上执行,为了避免重复执行Linux命令,现将启动命令存放于sh可执行文件中

start.sh

#!/bin/sh

# 获取当前目录
APPDIR=`pwd`
# 获取时间最新jar包
LAST_JAR=`ls -t |grep server_test.*.jar |head -n 1`

# 生成pid文件位置,用于结束运行使用
PIDFILE=$APPDIR/server_test.pid

# 如进程中已有pid,则退出命令
if [ -f "$PIDFILE" ] && kill -0 $(cat "$PIDFILE"); then
        echo "system is already running..."
        exit 1
fi

# 不输出控制台信息,应用在生产环境中
nohup java -Dloader.path=/data/**/cloud_lib -jar $LAST_JAR --spring.profiles.active=test  >/dev/null 2>&1 &
# 输出pid到pid文件
echo $! > $PIDFILE
echo "start $LAST_JAR success..."

改启动文件需要自行更改的地方

1.server_test 需要改成项目jar包的名称,版本号无需添加 如:

2.在当前项目启动目录时生成pig文件该文件内存放的是Java执行起来的进程Id,用于结束运行时使用

3.-Dloader.path,jar包运行需要用到的maven包,自行创建目录进行上传即可

4.spring.profiles.active=test。程序运行时执行的配置文件,可以根据不同环境的服务器进行随意更改。

正式如:spring.profiles.active=prod

执行命令:在Linux服务器命令行下执行 sh start.sh 生成pid文件,log文件即为执行成功。

stop.sh

#!/bin/sh

# 当前目录
APPDIR=`pwd`
# pid文件位置
PIDFILE=$APPDIR/server_test.pid
# 如进程中没有pid则不处理,如有pid则杀进程,删除pid文件
if [ ! -f "$PIDFILE" ] || ! kill -0 "$(cat "$PIDFILE")"; then
        echo "systemnot running..."
else
        echo "stopping system..."
        PID="$(cat "$PIDFILE")"
        kill -9 $PID
        rm "$PIDFILE"
        echo "...system stopped"
fi

1.需要修改pid文件名称

2.根据pid文件内的进程号去Kill进程

执行命令:在Linux服务器命令行下执行 sh stop.sh pid文件消失,即为进程kill成功。

ps:该工具配置好后可为日常部署减轻命令操作!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值