在Linux系统上安装Spring Boot应用程序

时间:2017-10-05 08:22:57

标签: java linux spring spring-boot

环境:

  • spring boot 1.5.2
  • linux redhat

我使用过Spring Docu:

https://docs.spring.io/spring-boot/docs/current/reference/html/deployment-install.html

所以我创建了一个符号链接( etc / init.d / myService )。每个方面都很好。我可以通过以下方式控制我的服务: sudo service myService start | stop | staus

但不幸的是,我不允许在/etc/init.d中添加符号链接

我尝试在 /etc/init.d 中放置一个脚本 myService ,此脚本只包含一行:

/work/springBoot/myService.jar

但现在我进入

sudo service myService status

Spring启动应用程序启动。而不是显示状态。那我该怎么办?

1 个答案:

答案 0 :(得分:0)

这对我有用:

t = Thread(target=recv)
# Daemon runs in background, and main can respond to ctrl-c.
t.daemon = True
t.start()

诀窍是

#!/bin/bash
# chkconfig: 345 20 80
SPRING_BOOT_JAR=myService-0.1.1.jar
SPRING_BOOT_DIR=/work/springboot/myService
EXECUTABLE=$SPRING_BOOT_DIR/$SPRING_BOOT_JAR

export OUT_LOG="$SPRING_BOOT_DIR/out.log"
export MODE="service"

start() {

echo "Start was called for " + $EXECUTABLE
nohup $SPRING_BOOT_DIR/$SPRING_BOOT_JAR start > $OUT_LOG 2>&1 &

}

stop() {

echo "Stop was called for " + $EXECUTABLE
$SPRING_BOOT_DIR/$SPRING_BOOT_JAR stop

}

status() {

echo "Status was called for " + $EXECUTABLE
$SPRING_BOOT_DIR/$SPRING_BOOT_JAR "status"

}

case "$1" in

start)
    start
    ;;
stop)
    stop
    ;;
status)
    status
    ;;
*)
    echo "Please use start|stop|status"
    exit 1
    ;;
esac

exit