springboot基礎總結以及Java系統部署腳本使用
阿新 • • 發佈:2018-01-31
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系統部署腳本使用