如何从 Heroku 迁移到 Amazon Web Services (AWS)

Emr*_*mre 6 heroku amazon-web-services amazon-elastic-beanstalk

我有一个在 heroku 上工作的 rails 应用程序。我想知道如何从 Heroku 迁移到 AWS Elastic Beanstalk。

我使用 Heroku postgres,并且我在工作 dynos 上运行了 cron 作业。

我在互联网上搜索,但大多数链接使用 docker,但我需要本机解决方案。


编辑:我最好为以后阅读的人写一些东西。

首先,我们在弹性豆茎上设置环境变量。接下来,我们已经为 RDS 配置了 database.yml 文件。您可以按照此博客文章了解这些初始设置步骤。

在这个过程中,sidekiq 是最难逼我们的。

我们使用 Amazon ElastiCache 创建了一个 redis 实例。然后我们更改了 redis 和 sidekiq 配置设置。为此,这篇博文在这方面对我们非常有用。

下一步是备份我们的数据库并恢复到 RDS。在这一步之后,我们配置了 ssl 和 dns 设置。

同时,如果您的项目中有 force_ssl 配置设置,则会导致您的项目在新打开的 elastic beanstalk 环境中失败。因为 elastic beanstalk 默认没有任何 ssl 定义。

小智 4

你使用 Heroku postgres 吗?拉一个备份。将您的备份恢复到 RDS 实例(不是由 EBS 启动的实例)。如果需要,您可以使用代码构建、代码提交和管道等 AWS 服务。否则打包您的存储库并将其上传到 EBS。在 EBS 中设置环境变量并按照 AWS 操作如何附加数据库。如果您需要一名工人,您需要就如何做做出一些决定。EBS 现在有您可以使用的工作层,但您必须对您的应用程序进行一些更改。

您的需求越具体,我们就越能提供帮助。

有关在 ebs 上设置 Rails 应用程序的 AWS 文档