spring cloud 微服務啟動腳本


#!/bin/bash
APP_NAME=xxx
JAR_FILE=$APP_NAME.jar
LOG_PATH=/home/chen/logs/log

start(){
  checkpid
  if [ ! -n "$pid" ]; then
    echo "啟動命令"
    echo "nohup java -jar $JAR_FILE >nohup.out &"
    nohup java -jar $JAR_FILE  >nohup.out &
    echo "---------------------------------"
    echo "啟動完成,按CTRL+C退出日志界面即可>>>>>"
    echo "---------------------------------"
    sleep 35s
    # 到日志文件夾中尋找最新的一個日志文件
    LOG_FILE=`ls -t $LOG_PATH/idcim.log | head -1`
    # 打印啟動日志,如果發現日志中包含Tomcat started這個字符說明啟動成功,結束打印進程
    tail -f $LOG_FILE|while read line
    do
        kw=`echo $line|grep "Tomcat started"|wc -l`
        if [ $kw -lt 1 ];then
            echo $line
        else
        tail_pid=`ps -ef |grep $LOG_FILE |grep -v grep |awk '{print $2}'`
        kill -9 $tail_pid
        fi
    done
    echo "執行成功"
  else
      echo "$APP_NAME is runing PID: $pid"
  fi
}

checkpid(){
    pid=`ps -ef |grep $JAR_FILE |grep -v grep |awk '{print $2}'`
}

stop(){
     # 停止前直接到對應的eureka服務中刪除對應的實例,URL規則可以根據注冊時的不同規則自行制定
      #curl -X "DELETE"  "http://$EUREKA_HOST/eureka/apps/$APP/$server:$PORT"
    checkpid
    if [ ! -n "$pid" ]; then
     echo "$APP_NAME not runing"
    else
      echo "$APP_NAME stop..."
      kill $pid
      sleep 2s
      kill -9 $pid
    fi
}
 
restart(){
    stop
    sleep 1s
    start
}
 
status(){
   checkpid
   if [ ! -n "$pid" ]; then
     echo "$APP_NAME not runing"
   else
     echo "$APP_NAME runing PID: $pid"
   fi
}
case $1 in
          start) start;;
          stop)  stop;;
          restart)  restart;;
          status)  status;;
              *)  echo "require start|stop|restart|status"  ;;
esac

分享一個啟動spring cloud微服務的腳本,在網上看的,然后修改的。更加簡潔,方便使用。使用時修改APP_NAME和LOG_PATH


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM