spring boot怎么部署到服务器
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了spring boot怎么部署到服务器相关的知识,希望对你有一定的参考价值。
1. 既然需要打包成war包项目,首先需要在pom.xml文件中修改打包类型,将spring boot默认的<packaging>jar</packaging>修改为<packaging>war</packaging>形式;2. 其次spring boot的web项目中内嵌tomcat服务器,所以如果我们想要发布war包到tomcat项目,要讲spring boot中内嵌的tomcat包依赖排除,不然产生冲突,打开下面代码中的注释即可。
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<!--
<exclusions>
<exclusion> 参考技术A
Spring Boot 的可执行 jars 是为大多数流行的云 PaaS(平台即服务)提供商准备的。这些提供商往往要求您“自带容器”。他们管理应用程序进程(不是专门的 Java 应用程序),因此他们需要一个中间层,使您的应用程序适应云中正在运行的进程的概念。
两个流行的云提供商 Heroku 和 Cloud Foundry 采用“构建包”方法。buildpack 将您部署的代码包装在启动应用程序所需的任何内容中。它可能是 JDK 和java对嵌入式 Web 服务器或成熟的应用程序服务器的调用。buildpack 是可插入的,但理想情况下,您应该能够对其进行尽可能少的自定义。这减少了不受您控制的功能的占用空间。它最大限度地减少了开发和生产环境之间的差异。
理想情况下,您的应用程序,就像一个 Spring Boot 可执行 jar,将运行所需的一切都打包在其中。
nginx 部署多个 spring-boot jar 方式项目
springboot项目部署到服务器常见的方式就是打成war包部署Tomcat或者打成jar包直接使用内置容易运行,很多人现在都打成war包部署到tomcat,这种方式虽然没问题 但是后期维护比较麻烦。从官方的说明中 打成jar部署是最好的方式,但是这样又有个问题 如果同时部署多个spring-boot项目 端口不一样 怎么通过域名来访问呢,接下来就需要Nginx出手了,Nginx 是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器。很适合部署springboot,Nginx的安装这里不在做教程 给出主要nginx.conf的配置:
server listen 80; server_name 127.0.0.1; access_log logs/book.log; error_log logs/book.error; #将/wx-service请求转发给http://127.0.0.1:8011/wx-service处理 location /wx-service proxy_set_header Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_pass http://127.0.0.1:8011/wx-service; #将/bootdo请求转发给http://127.0.0.1:8012/bootdo处理 location /bootdo proxy_set_header Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_pass http://127.0.0.1:8012/bootdo; #将/xcloud-service请求转发给http://127.0.0.1:8013/xcloud-api处理 location /xcloud-service proxy_set_header Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_pass http://127.0.0.1:8013/xcloud-api; #将/eureka-service请求转发给http://127.0.0.1:8081/eureka-service处理 location /eureka-service proxy_pass http://127.0.0.1:8081/eureka-service; #这里的端口记得改成项目对应的哦 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-Port $server_port; #将/xcloud-api请求转发给http://127.0.0.1:8082/xcloud-api处理 location /xcloud-api proxy_pass http://127.0.0.1:8082/xcloud-api; #这里的端口记得改成项目对应的哦 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-Port $server_port;
localtion /xxx 这块就是配置nginx端口转发部署几个项目就配置几个,也可以将tomcat中的项目配置在这。
以上是关于spring boot怎么部署到服务器的主要内容,如果未能解决你的问题,请参考以下文章
spring-boot项目打包的jar包怎么部署到linux上,并运行啊!
Spring Boot框架开发Web项目 Spring Boot项目的打包和部署
Spring Boot框架开发Web项目 Spring Boot项目的打包和部署