springboot Jar包 部署到Linux服务器运行,并创建启动脚本
程序员文章站
2022-05-01 08:12:43
...
一.把本地项目jar包上传到Linux服务器上面
路径如下/home/admin/demo/demo-0.0.1-SNAPSHOT.jar
二.项目重启的脚本,写个deploy.sh 的脚本,注意脚本和jar包同级目录,脚本如下:
#!/bin/bash
PROG_NAME=$0
ACTION=$1
APP_PORT=8080 # 应用端口
APP_HOME=/home/admin/demo # 从package.tgz中解压出来的jar包放到这个目录下
JAR_NAME=demo-0.0.1-SNAPSHOT.jar # jar包的名字
APP_LOG=${APP_HOME}/logs/app.log # 应用的日志文件
PID_FILE=${APP_HOME}/pid # 应用的pid会保存到这个文件中
# 创建出相关目录
mkdir -p ${HEALTH_CHECK_FILE_DIR}
mkdir -p ${APP_HOME}
mkdir -p ${APP_HOME}/logs
usage() {
echo "Usage: $PROG_NAME {start|stop|restart}"
exit 2
}
start_application() {
echo "start jar"
if [ -f "$PID_FILE" ] && kill -0 "$(cat ${PID_FILE})"; then
echo "Application is running, exit"
exit 0
fi
rm -rf ${APP_HOME}/${JAR_NAME}
tar -zxvf /home/admin/package.tgz -C ${APP_HOME}
java -jar ${APP_HOME}/${JAR_NAME} > ${APP_LOG} 2>&1 &
echo $! > ${PID_FILE}
}
stop_application() {
echo "stop jar"
if [ -f "$PID_FILE" ]; then
kill -9 `cat $PID_FILE`
rm $PID_FILE
else
echo "pid file $PID_FILE does not exist, do noting"
fi
}
start() {
start_application
}
stop() {
stop_application
}
case "$ACTION" in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
*)
usage
;;
esac
三.脚本运行
1.cd /home/admin/demo
注 :第一次运行的时候获取一下执行权限 执行命令 chmod +x deploy.sh
2../deploy.sh start
上一篇: 如何让程序在linux服务器下一直运行(关闭远程连接后仍然继续运行)
下一篇: DIV高度自适应全屏