liunx服務器啓-微服務各模塊啓動腳本deploy.sh

#!/bin/sh
#------------------------
#
# JAR打包運行腳本
#------------------------

ROOTPAT=`pwd`

#重新打包所有模塊代碼
compact(){
	
	git pull
	echo "--------代碼拉取完成"

	if [ -z "$1" ]
 	then
 		echo "--------開始打包所有模塊"
		mvn clean package
		echo "--------打包所有模塊完成"
 	else
 		Module=$1
 		cd ${ROOTPAT}/${Module}
 		echo "###---當前打包目錄${ROOTPAT}/${Module}---###"
 		echo "--------開始打包${Module}模塊"
		mvn clean package
		echo "--------打包${Module}模塊完成"
 	fi
}


#啓動服務
startServer(){
	if [ -z "$1" ]
 	then
 		echo "第一個參數爲環境名稱,etc:test"
 	fi

	if [ -z "$2" ]
 	then
 		echo "第二個參數爲服務名稱,etc:hxzq-cloud-data"
 	fi
 	echo "--------啓動服務開始 $2 ----------"
	profile=$1
	serverName=$2
	nohup  java -jar -Dspring.profiles.active=${profile}  -Duser.timezone="Asia/Shanghai" -server ${ROOTPAT}/${serverName}/target/${serverName}.jar > ${serverName}.nohup.log 2>&1  &
	echo "--------啓動服務結束 $2 ----------"
}


#停止服務
stopServer(){
	APP=$1
	PID=$(ps -ef | grep $APP | grep -v grep | awk '{ print $2 }')
	if [ -z "$PID" ]
	then
	echo Application ${APP} is already stopped
	else
	kill $PID
	echo ${APP} stop success
	fi
}

case $1 in
	www)
		if [ "$2" = 'withpack' ]
		then
			compact -cloud-www
		fi
		stopServer -cloud-www
		startServer dev -cloud-www
	;;
	data)
		if [ "$2" = 'withpack' ]
		then
			compact -cloud-data
		fi
		stopServer -cloud-data
		startServer prod hxzq-cloud-data
	;;
	eureka)
		if [ "$2" = 'withpack' ]
		then
			compact  -cloud-eureka-01
		fi
		stopServer -cloud-eureka-01
		startServer dev -cloud-eureka-01
	;;
	user)
		if [ "$2" = 'withpack' ]
		then
			compact -cloud-user
		fi
		stopServer hxzq-cloud-user
		startServer dev hxzq-cloud-user
	;;
	all)
		if [ "$2" = 'withpack' ]
		then
			compact -cloud-user
			compact -cloud-www
			compact -cloud-data
		fi
		stopServer -cloud-user
		stopServer -cloud-www
		stopServer -cloud-data

		startServer dev -cloud-user
		startServer dev -cloud-www
		startServer prod -cloud-data
	
	;;
	stopall)
		stopServer -cloud-user
		stopServer -cloud-www
		stopServer -cloud-data		
	;;
 	*)
	  echo "Usage: www|data|eureka|user 分別啓動不同的服務"
	;;
	esac
	exit 0

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章