猜你不知道Spring Boot的几种部署方式
副标题[/!--empirenews.page--]
引言 本文主要讲的是spring boot的五种部署方式,里面是否有你不知道的呢,如果有欢迎评论留言哦,一起交流探讨哦!!! 可以使用各种方法将Spring Boot应用程序部署到生产系统中。在本文中,我们将通过以下5种方法逐步部署Spring Boot应用程序:
在Java Archive(JAR)中作为独立应用程序进行部署 Spring Boot应用程序可以轻松打包到JAR文件中,并作为独立应用程序进行部署。这是由spring-boot-maven-plugin完成的。一旦Spring项目通过Spring Initializr创建为Maven项目,插件就会自动添加到pom.xml中。
要将应用程序打包在单个(胖)jar文件中,请mvn package在项目目录下运行maven命令。这将把应用程序打包到一个可执行的jar文件中,该文件包含所有依赖项(包括嵌入式servlet容器 - 如果它是一个Web应用程序)。要运行jar文件,请使用以下标准JVM命令:
将Web应用程序存档(WAR)部署到servlet容器中 可以将Spring Boot应用程序打包到WAR文件中,以部署到现有的servlet容器(例如Tomcat,Jetty等)中。这可以按如下方式完成: 通过pom.xml文件指定WAR包<packaging>war</packaging>。这会将应用程序打包成WAR文件(而不是JAR)。在第二步,将Tomcat(servlet容器)依赖关系的范围设置为provided(以便它不会部署到WAR文件中):
通过扩展SpringBootServletInitializer并覆盖configure方法来初始化Tomcat所需的Servlet上下文,如下所示:
要将应用程序打包到war文件中,请mvn clean package在项目目录下运行标准maven命令。这将生成可以部署到servlet容器中的WAR包。要在现有Tomcat容器中运行应用程序,请将生成的WAR文件复制到tomcat/webapps/目录。 在Docker Container中部署 在将应用程序部署到Docker容器之前,我们首先将应用程序打包在(胖)JAR文件中。之前已经解释了这个过程,因此我假设我们有一个jar文件。 在第一步,我们需要构建一个容器镜像。为此,我们首先在项目根目录中创建一个Dockerfile,如下所示:
请注意,在上面的代码片段中,我们假设应用程序JAR文件“ demoApp.jar”位于项目的目标目录下。我们还假设嵌入式servlet端口是8080(这是Tomcat的默认情况)。 我们现在可以使用以下命令构建Docker镜像(Dockerfile所在的位置):
-t是要构建的镜像的名称和标记。构建镜像后,我们可以通过以下方式创建和运行容器:
-p是发布(映射)主机端口到容器端口(在这种情况下,两个都是8080)。选项-d(detach)指定在后台运行容器,并用--name指定容器的名称。 部署在NGINX Web服务器后面 - 直接设置 为实际生产配置servlet容器(例如Tomcat或Jetty)(即在端口80上运行,没有root用户和使用SSL)可能不是直接的(但可行)。此,建议在Spring Boot应用程序前使用Web服务器(如Nginx)。这可以通过两种方式完成; 直接设置或Docker设置。在本节中,我们将演示直接设置。 (编辑:应用网_丽江站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |