SpringBoot应用linux环境发布启动与停止详解

Spring Boot应用启动

Spring Boot的启动命令为:

java -jar application.jar


# Demo

$ java -jar target/myproject-0.0.1-SNAPSHOT.jar 

  .   ____          _            __ _ _
 /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
  '  |____| .__|_| |_|_| |_\__, | / / / /
 =========|_|==============|___/=/_/_/_/
 :: Spring Boot ::        (v1.4.3.RELEASE)

2017-01-13 15:31:36.911  INFO 62119 --- [           main] com.test.Example                         : Starting Example on local with PID 62119 (/Users/ltc/Spring Boot Demo/target/myproject-0.0.1-SNAPSHOT.jar started by liutianchi in /Users/ltc/Spring Boot Demo)
2017-01-13 15:31:36.916  INFO 62119 --- [           main] com.test.Example     

Linux生产环境,请用如下命令启动:

nohup java -jar + *.jar &

Spring Boot应用关闭

Spring Boot应用关闭的前提条件是POM.xml添加以下内容:

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-actuator</artifactId>
</dependency>

application.properties中添加:

#启用shutdown
endpoints.shutdown.enabled=true
#禁用密码验证
endpoints.shutdown.sensitive=false

关闭命令为:

curl -X POST host:port/shutdown


# Demo

$ curl -X POST http://localhost:8080/shutdown
{"message":"Shutting down, bye..."}


$ curl -X POST http://localhost:8080/manage/shutdown
{"message":"Shutting down, bye..."}

如果要配置路径,需要在application.properties中添加management.context-path=/manage,则关闭命令变为curl -X POST host:port/manage/shutdown

安全验证

如果在关闭时需要安全验证,则在pom.xml文件中添加:

<dependency>
     <groupId>org.springframework.boot</groupId>
     <artifactId>spring-boot-starter-security</artifactId>
</dependency>

application.properties中添加:

#开启shutdown的安全验证
endpoints.shutdown.sensitive=true

#验证用户名
security.user.name=admin

#验证密码
security.user.password=admin
#角色
management.security.role=SUPERUSER

# 指定端口
management.port=8081

# 指定地址
management.address=127.0.0.1

关闭命令为:

curl -u admin:admin -X POST http://127.0.0.1:8081/manage/shutdown

# Demo

$ curl -u admin:admin -X POST http://127.0.0.1:8081/manage/shutdown
{"message":"Shutting down, bye..."}

暴力关闭命令

netstat -nlp |grep :8181 |grep -v grep|awk '{print $7}' |awk -F '/' '{print $1}' |xargs kill -9


评论

*
*