Spring Boot基礎教程31-生產部署-注意事項和如何使用腳本

一、 注意事項 
1. 去除不需要的 jar 
開發工具 jar:spring-boot-devtools 
2. 監控一定要做好權限控制或者去除 
控制 jar:spring-boot-starter-actuator 
druid 的監控 
swagger 的接口 
3、打包,跳過測試 
maven: clean package -Dmaven.test.skip=true 
二、 腳本 
#!/bin/sh 
## chang here 
SERVICE_DIR=/roncoo/spring-boot-demo 
SERVICE_NAME=spring-boot-demo-31-1-0.0.1-SNAPSHOT 
SPRING_PROFILES_ACTIVE=dev 
## java env 
export JAVA_HOME=/opt/jdk1.7.0_79 
export JRE_HOME=${JAVA_HOME}/jre 
case "$1" in 
start) 
procedure=`ps -ef | grep -w "${SERVICE_NAME}" |grep -w "java"| grep -v "grep" 
| awk '{print $2}'` 
if [ "${procedure}" = "" ]; 
then 
echo "start ..." 
if [ "$2" != "" ]; 
then 
SPRING_PROFILES_ACTIVE=$2 
fi 
echo "spring.profiles.active=${SPRING_PROFILES_ACTIVE}" 
exec nohup ${JRE_HOME}/bin/java -Xms128m -Xmx512m -jar 
${SERVICE_DIR}/${SERVICE_NAME}\.jar --
spring.profiles.active=${SPRING_PROFILES_ACTIVE} >/dev/null 2>&1 & 
echo "start success" 
else 
echo "${SERVICE_NAME} is start" 
fi 
;;stop) 
procedure=`ps -ef | grep -w "${SERVICE_NAME}" |grep -w "java"| grep -v "grep" 
| awk '{print $2}'` 
if [ "${procedure}" = "" ]; 
then 
echo "${SERVICE_NAME} is stop" 
else 
kill -9 ${procedure} 
sleep 1 
argprocedure=`ps -ef | grep -w "${SERVICE_NAME}" |grep -w "java"| grep -v 
"grep" | awk '{print $2}'` 
if [ "${argprocedure}" = "" ]; 
then 
echo "${SERVICE_NAME} stop success" 
else 
kill -9 ${argprocedure} 
echo "${SERVICE_NAME} stop error" 
fi 
fi 
;; 
restart) 
$0 stop 
sleep 1 
$0 start $2 
;; 
*) 
echo "usage: $0 [start|stop|restart] [dev|test|prod]" 
;; 
esac

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