使用 AWS Elastic Beanstalk 在 AWS 上部署 Spring Boot 应用程序
Posted
技术标签:
【中文标题】使用 AWS Elastic Beanstalk 在 AWS 上部署 Spring Boot 应用程序【英文标题】:Deploying a Spring Boot Application on AWS Using AWS Elastic Beanstalk 【发布时间】:2017-09-28 22:10:37 【问题描述】:我想,但我没有看到上传 jar 文件的选项,只有 zip 和 war (?!)
在本教程中,他们正在部署一个 jar 文件: https://aws.amazon.com/es/blogs/devops/deploying-a-spring-boot-application-on-aws-using-aws-elastic-beanstalk/
【问题讨论】:
您可以使用相同的 ZIP 或 WAR 文件上传器上传 JAR 文件。 【参考方案1】:教程:如何使用 Elastic Beanstalk 将 Spring Boot 应用程序部署到 Amazon AWS
Youtube 视频教程: https://www.youtube.com/watch?v=JYVlzoRMa3U
源码链接:https://github.com/marcthomas2013/spring-boot-aws
完整教程链接:https://mtdevuk.com/2015/02/10/how-to-deploy-a-spring-boot-application-to-amazon-aws-using-elastic-beanstalk/
创建 Spring Boot War:
-
启动安装了 Spring Extensions 的 eclipse IDE。对于 Luna,将此链接添加到您的更新安装程序 http://dist.springsource.com/release/TOOLS/update/e4.4/
您还需要在 Eclipse 中安装 Tomcat 服务器。如果您没有此设置,请先在 Google 上搜索设置说明,然后再继续。
选择文件->新建->其他->Spring->Spring Starter Project
将名称和工件设置为 spring-boot-aws
将包装从 jar 更改为 war(这有几件事我稍后会解释)
选择 Actuator 和 Remote Shell,以便我们有一些 RESTful 服务来测试应用程序。
点击完成
它创建了一个简单的 Spring Boot 应用程序,其中包含一些 REST 服务,例如 /beans,这些服务将返回应用程序中所有 bean 的 JSON 对象。
使用 Amazon Elastic Beanstalk 部署您的应用程序
-
登录亚马逊 AWS。
在主控制面板中,选择 Deployment & Management 下的 Elastic Beanstalk。
点击右上角的创建应用程序。
输入应用程序名称并单击下一步。
环境层 - Web 服务器
预定义配置 – Tomcat
环境类型 - 单实例
点击下一步
选择上传您自己的,点击浏览并找到您之前创建的战争。
上传应用程序后,您将看到选择 URL 的下一页。
输入名称并单击“检查可用性”以查看是否可以使用。
点击下一步
在此示例中我们不需要 RDB,因此请单击此处。
在下一步中,您将定义将要创建的 EC2 实例,如果您使用免费试用版,请坚持使用免费 t1.micro 实例类型。
EC2 密钥对,可以不选中。你现在不需要它,很可能你还没有配置。这将在以后的帖子中介绍。
点击下一步。
在环境标签中再次单击下一步,因为我们不关心这个。
查看配置,然后单击启动。
Amazon AWS 现在将配置您的服务器、安装 Tomcat 服务器并部署您上传的 war 文件。完成此操作确实需要 5-10 分钟。
此处提供另一个完整教程: Step-by-Step Guide to Deploying a Full-Stack Spring Boot Application in AWS
如果你想使用CLI以官方方式部署代码,那么你可以通过this tutorial:
P.S 如果您遇到 502 Bad Gateway nginx 的问题,您有三个选项 我更喜欢将 spring boot 端口更改为 5000 在此处查看更多详细信息Bad GatWay problem 3 options to solve it
【讨论】:
源代码很有用,但 youtube 视频不可用 @BaDrAmer 我已链接到另一个 youtube 视频。请检查 分步指南的链接不再可用:(以上是关于使用 AWS Elastic Beanstalk 在 AWS 上部署 Spring Boot 应用程序的主要内容,如果未能解决你的问题,请参考以下文章
AWS Elastic Beanstalk 上禁止使用 Django 403
使用 AWS CodeBuild 和 EB CLI 部署到 AWS Elastic Beanstalk