使用 AWS Elastic Beanstalk 部署 rails 应用程序时管理迁移
Posted
技术标签:
【中文标题】使用 AWS Elastic Beanstalk 部署 rails 应用程序时管理迁移【英文标题】:manage migrations when deploy rails app with AWS Elastic Beanstalk 【发布时间】:2013-02-20 06:08:08 【问题描述】:AWS Elastic Beanstalk 易于用于在 Amazon EC2 上部署 rails 应用程序。通过将 RAILS_SKIP_MIGRATIONS 设置为 true,eb 将不会自行运行迁移,因此我可以自己管理迁移。
但是,通过 SSH 连接到 Beanstalk 创建的 EC2 实例,我在主目录中找不到部署的 rails 应用程序。然后我不知道在哪里手动 rake 迁移。
我想知道为什么在 EC2 实例上找不到 rails 应用程序,因为该实例是托管应用程序的 Web 服务器。它隐藏在某个地方吗?我应该如何手动 rake 迁移?
谢谢
【问题讨论】:
【参考方案1】:试试看/var/app/current
。
【讨论】:
如果没有部署成功,它也可能在/var/app/ondeck
。【参考方案2】:
我认为你找不到 rake,因为弹性 beanstalk 在虚拟环境 - rvm 中运行 ruby 环境。尝试在为当前终端设置 ruby 环境的目录 /opt 环境变量中查找。我不确定 ruby,但对于 python,你应该这样做:source /opt/python/current/env。
【讨论】:
以上是关于使用 AWS Elastic Beanstalk 部署 rails 应用程序时管理迁移的主要内容,如果未能解决你的问题,请参考以下文章
AWS Elastic Beanstalk 上禁止使用 Django 403
使用 AWS CodeBuild 和 EB CLI 部署到 AWS Elastic Beanstalk