限制条件:
The default script supports most Linux distributions and is tested on CentOS and Ubuntu. Other platforms, such as OS X and FreeBSD, will require the use of a custom embeddedLaunchScript.
当前文档适用于 CentOS and Ubuntu,其他平台需要定制脚本,见参考文档1
1、部署发布
1.1 打包
maven打包成执行文件
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<executable>true</executable>
</configuration>
</plugin>
Gradle设置
springBoot {
executable = true
}
You can then run your application by typing ./my-application.jar
(where my-application
is the name of your artifact).
打包完成后,可以使用./my-application.jar
运行
1.2 原理
linux下查看文件格式为一个bshell可执行文件
[root@i-2cjt6k6n ~]# file audit-console-1.0.0.jar
audit-console-1.0.0.jar: Bourne-Again shell script text executable
查看文件内容
vi audit-console-1.0.0.jar
文件开头:
shell与执行jar内容的分割:
可以看到,非常高的技巧,jar包包装为shell可执行文件,另外可以加载自己运行
1.3 发布为一个服务
ln -s /var/myapp/myapp.jar /etc/init.d/myapp
service myapp start
更详细的文档见参考文档1
2、参考文档
1、 Installing Spring Boot applications http://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/
2、 Spring Boot 部署与服务配置 http://blog.csdn.net/catoop/article/details/50588851