1. 程式人生 > >springboot基礎總結以及Java系統部署腳本使用

springboot基礎總結以及Java系統部署腳本使用

package hot 後臺運行 pack ips top -o pre $0

springboot學習比較總結:https://pan.baidu.com/s/1dYwvpk


Java系統部署腳本:

當想把程序放到後臺運行: nohup ./your_command &

部署Java:

1. eclipse上使用maven打包項目:clean package

2. 找到工作目錄:E:\work\mywork\ad_logsIndex\target

技術分享圖片

3. 將兩個文件復制到Linux的一個目錄下(我用filezilla工具來復制文件),並且寫啟動腳本

#!/bin/bash
 
prog=logsindex
JAVA_HOME=/usr/java/jdk1.8.0_144
prog_dir=/opt/webapps/logsindex
 
 
start() {
    echo -n $"Starting $prog: "
    cd $prog_dir
    screen -dmS $prog $JAVA_HOME/bin/java -jar -Xms2048m -Xmx4096m $prog_dir/ad_logsIndex-0.0.1-SNAPSHOT.jar com.voole.ad.main.StartUp -Djava.ext.dirs=$prog_dir/lib
    retval=$?
    echo
    [ $retval -eq 0 ]
    return $retval
}
 
stop() {
    echo -n $"Stopping $prog: "
    killproc $prog
    retval=$?
    echo
    [ $retval -eq 0 ]
    return $retval
}
 
case "$1" in
    start)
        $1
        ;;
    stop)
        $1
        ;;
    *)
        echo $"Usage: $0 {start|stop}"
        exit 2
esac


技術分享圖片


4. 修改權限:

# chmod a+x ad_logsIndex-0.0.1-SNAPSHOT.jar

# chmod a+x start.sh

技術分享圖片

5. 啟動

[root@localhost logsindex]# ./start.sh start

Starting logsindex:

6. 停止服務

方法一:

[root@localhost logsindex]# ./start.sh stop

註意:logsindex名稱是在腳本中(prog=logsindex)配置的

方法

# ps -ef | grep logsindex

然後通過kill命令+進程號切斷進程。

方法三:

# screen -r logsindex

Ctrl+A+D:退出但不停止進程

Ctrl+C :退出進程


另外見過的腳本:

#!/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


springboot基礎總結以及Java系統部署腳本使用