前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >部署boot项目sh脚本

部署boot项目sh脚本

作者头像
阿超
发布2022-08-21 14:01:26
4740
发布2022-08-21 14:01:26
举报
文章被收录于专栏:快乐阿超快乐阿超

分享一个部署boot项目的sh脚本

代码语言:javascript
复制
#环境变量
source /etc/profile
#!/bin/sh
#jdk
JAVA_HOME=/此处换成真实jdk路径
export PATH=$PATH:$JAVA_HOME/bin
export BUILD_ID=dontkillme
#定义程序名 及jar包的名
PROJECT_NAME=此处换成真实jar名称.jar
LOG_NAME=日志名.log
## 编写判断程序是否正在运行的方法
isExist() {
  ## 首先查找进程号
  pid=$(ps -ef | grep ${PROJECT_NAME} | grep -v "grep" | awk '{print $2}')
  echo "${pid}"
  ## 如果进程号不存在,则返回0 否则返回1
  if [ -z "${pid}" ]; then
    return 0
  else
    return 1
  fi
}
## 编写启动程序方法
start() {
  ## 调用 判断程序是否正在运行的方法
  isExist
  ## 判断方法返回值是否等于0 ,等于则不存在
  if [ $? -eq "0" ]; then
    echo "${PROJECT_NAME} is starting ......"
    nohup java  -jar ${PROJECT_NAME} --spring.profiles.active=prod >${LOG_NAME} 2>&1 &
    echo "${PROJECT_NAME} startup success"
  else
    echo "${PROJECT_NAME} is already running, pid=${pid}"
    restart
  fi
}
## 编写停止程序的方法
stop() {
  ## 调用 判断程序是否正在运行
  isExist
  ## 判断是否存在,返回值0不存在
  if [ $? -eq "0" ]; then
    echo "${PROJECT_NAME} is not running ......"
  else
    echo "${PROJECT_NAME} is already running, pid=${pid}, prepare kill it "
    kill -9 ${pid}
    echo "${PROJECT_NAME} has been successfully killed ......"
  fi
}
## 编写重启方法
restart() {
  ## 先停止再启动
  stop
  start
}

## 程序最开始执行的
## 根据用户输入,判断执行方法
case "$1" in
"start")
  start
  ;;
"stop")
  stop
  ;;
"restart")
  restart
  ;;
*)
  echo "please enter the correct commands: "
  echo "such as : sh startup.sh [ start | stop | restart ]"
  ;;
esac
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-06-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档