当前位置: 首页 > 知识库问答 >
问题:

将特性持续部署到AWS托管的Spring Boot应用程序中

宋岳
2023-03-14

我正在寻找关于如何将新特性持续部署到托管在AWS EC2实例上的Spring Boot web应用程序的建议/想法。我的当前工作流:

  1. bootrepackage创建war文件的应用程序。
  2. 将该文件上载到AWS。
  3. 向我的应用程序添加一个新功能。
  4. 再次启动bootrepackage
  5. 从AWS中删除当前的war,并上载新的war。

这显然不是一个好的工作流,因为应用程序需要重新启动,这可能导致1)停机和2)数据库中的条目丢失(如果我使用的是Spring默认的H2数据库--我不是,我使用的是独立的SQL server,但只是为了说明这个问题),所以我想简化它。

提前感谢!

更新,这真的是正确答案吗?

共有1个答案

松和安
2023-03-14

如果您使用aws的单个实例并将应用程序部署到EC2实例,请为aws EC2实例分配弹性IP。

弹性IP地址是为动态云计算设计的静态IPv4地址。弹性IP地址与您的AWS帐户相关联。使用弹性IP地址,您可以通过快速将地址重新映射到帐户中的另一个实例来掩盖实例或软件的故障。

  1. 在另一个AWS EC2实例中部署应用程序的新版本
  2. 当应用程序就绪时,将弹性IP从现有的EC2实例重新分配到新的EC2实例
 类似资料:
  • 我从昨天开始尝试在AWS Beanstalk上的Tomcat中部署Spring启动,但我总是出现此异常: 在我的本地开发环境中,我没有这个错误。在我的本地开发环境中,我在Tomcat 7上开发了“1.0.2.RELEASE”版本。 我创建了一场战争,我在AWS Beanstalk中的Tomcat 7实例上部署了它,但下面的错误总是出现。如何修复此错误?

  • 完成干净的构建后,我将war文件复制到Tomcat的文件夹中。但是部署会发生两次,并且在上下文已经存在的情况下以异常结束。我错过了什么? 非常感谢您的帮助。

  • 问题内容: 在我的组织中,我们有200多个Microsoft桌面和Web应用程序。我正在尝试为那些应用程序设置持续集成和持续部署(我已经为Java应用程序做过)。我们已经在企业Github,Jenkins,Nexus,XL- Deploy和XL- Release中使用了以下工具。我们还开发了Groovy的框架,该框架由Jenkins调用,并在Jenkins中分配了所有自动创建的工作,并将生成的工件

  • 我目前正在开发一个云备份解决方案,其中涉及到多达8个在spring-boot中开发的微服务,并使用mongo DB atlas作为持久层。 微服务包括Netflix ZUUL API网关和Netflix Eureka作为服务发现机制。微服务被要求彼此进行明显的对话。 对微服务进行了对接。到目前为止,我已经使用docker-compose文件将它们部署到EC2实例中,该文件列出了使用docker网络