在生产中部署Spring Boot

时间:2018-10-26 06:13:16

标签: spring spring-boot tomcat

我们有一个Spring Boot + Angular应用程序。目前,我们将其包装为罐子并运行。

可以将包装用作JAR吗? 还是我们应该转向WAR型包装。 有什么区别?

3 个答案:

答案 0 :(得分:0)

可以告诉Spring Boot生成WAR文件,在这种情况下,您可能会选择将其部署到Web容器,例如Tomcat或Jetty。

还可以告诉Spring Boot生成一个JAR,该JAR包含您所有模块/服务的依赖项,并且可以与java -jar一起运行。

答案 1 :(得分:0)

区别在于部署样式。

使用JAR时,春季启动会创建的胖JAR包含嵌入式tomcat。

如果您的团队的部署环境具有诸如WebLogic或Websphere等之类的Application Server,并且大多数企业环境出于这些或任何其他此类原因而已经选择了它们的许可证,那么您将需要创建WAR。

对于战争:

优点:

  • 发动战争是一种更安全的选择,因为您仍然可以根据需要部署在任何类型的应用程序或Web服务器中
  • 如果DevOps已经为其他具有应用程序服务器设置的团队进行了设置,则可以轻松钩接DevOps以控制服务器的启动和停止。

缺点:

  • 是否要在应用程序/ Web服务器中部署额外的配置和设置

答案 2 :(得分:0)

简便方法: 您可以转到application.yml文件并提及所有环境配置文件的详细信息,如下所示:

春天: 个人资料:默认

春天: 个人资料:dev

春天: 个人资料:质量检查

春天: 个人资料:PROD

在application.properties文件中之后,只需提及活动配置文件,如下所示

spring.profiles.active =质量检查或开发或生产