如何在aws中部署spring应用程序?
Posted
技术标签:
【中文标题】如何在aws中部署spring应用程序?【英文标题】:How to deploy a spring application in aws? 【发布时间】:2019-12-23 23:54:09 【问题描述】:如何在 AWS 中托管 Spring 应用程序。
我知道使用 Elastic Bean Stalk 可以轻松部署 Spring Boot 应用程序。 Spring 应用程序呢?我应该先迁移到 Spring Boot 吗?或者我应该只在安装在 EC2 上的 Tomcat 上运行它?
【问题讨论】:
访问文档:可以部署war中打包的spring web应用。 aws.amazon.com/answers/web-applications/… 【参考方案1】:首先,您可以使用 Maven 构建您的 Spring APP:
mvn clean install -f /your/module/path
结果将作为war
包位于/your/module/path/target/
文件夹内(这些包可以被Tomcat 读取)。
在您的 EC2 上安装 Tomcat,关于您的 JRE(Tomcat 8 在 Java 10- 之前运行良好,而 Tomcat 8.5+ 用于 Java 11+)。
如果您使用的是 Java 8,则可以通过使用 Ubuntu 16.04 启动 EC2 实例来轻松安装它(仅用于测试):
apt-get install default-jdk
(将安装 JDK8)
apt-get install tomcat8
(将安装 Tomcat 8)
安装完成后,您可以将war
包上传到/var/lib/tomcat8/webapps/
文件夹,然后触发命令service tomcat8 stop|start
。
希望对你有所帮助。
【讨论】:
我的 spring 应用程序有很多属性文件。那我怎么处理呢?【参考方案2】:这是一个更新的 AWS 教程,它在 Spring Boot 应用程序中使用适用于 Java V2 的 AWS 开发工具包。此应用程序调用多个 AWS 服务。您可以将应用程序打包到 JAR 中并将其部署到 AWS Elastic Beanstalk。有关分步说明,请参阅Creating your first AWS Java web application。
【讨论】:
以上是关于如何在aws中部署spring应用程序?的主要内容,如果未能解决你的问题,请参考以下文章
如何将 Spring Boot 应用程序战争部署到 AWS Elastic Beanstalk?
如何在我的 Spring Boot 应用程序中从 AWS 访问环境变量
使用 AWS Elastic Beanstalk 在 AWS 上部署 Spring Boot 应用程序
将 Spring Boot 应用程序部署到 AWS beanstalk