首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Elastic beanstalk Rails -默认为生产环境,即使我设置了暂存环境

Elastic beanstalk Rails -默认为生产环境,即使我设置了暂存环境
EN

Stack Overflow用户
提问于 2012-11-27 17:05:12
回答 3查看 3.7K关注 0票数 4

我正在尝试使用弹性豆茎来启动rails应用程序的升级实例。我遵循文档并执行了以下操作:

代码语言:javascript
复制
eb init --environment staging
eb start --environment staging

在此之后,我检查了.astic.elasticbeanstalk/选项设置是否仍然有'production‘作为环境。我手动将其更新为staging,并尝试使用git aws.push命令。

过了一段时间,一切都部署好了,然而,当我加载URL时,应用程序似乎仍然在使用所有的生产配置,而不是登台。我有没有漏掉什么步骤?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-12-01 18:00:48

Rails CLI工具中的--environment开关并不是指Rails环境,而是指您正在尝试启动的Elastic Beanstalk环境。Elastic Beanstalk环境是为已部署的应用程序版本提供的一组资源。这与Rails/Rack环境不同,Rails/Rack环境只是用户定义的上下文,应用程序代码在单个机器上运行。

为了设置Rails环境,您需要在eb start之后设置.elasticbeanstalk/optionsettings文件中的RACK_ENV (或RAILS_ENV)环境变量,然后调用eb update来触发这些环境变量的更新。或者,您可以通过容器编辑您的Elastic Beanstalk环境配置;在正确的环境上单击“环境详细信息”,在概述中单击“编辑配置”,然后转到“容器”来调整环境变量(在本例中,您将编辑RACK_ENV字段)。

票数 8
EN

Stack Overflow用户

发布于 2013-08-09 03:21:29

当我使用eb_deployer而不是eb命令行时,在尝试部署RAILS_ENV: development时,我发现db:migrate等可以在开发环境中运行,但它仍然以生产模式启动服务器。要解决此问题,必须在option_settings中同时传入RACK_ENV和RAILS_ENV:

代码语言:javascript
复制
[{
   namespace: 'aws:elasticbeanstalk:application:environment',
   option_name: 'RACK_ENV',
   value: "development"
 },
 {
   namespace: 'aws:elasticbeanstalk:application:environment',
   option_name: 'RAILS_ENV',
   value: "development"
 }]
票数 1
EN

Stack Overflow用户

发布于 2016-08-04 23:20:25

这里是首次将应用程序部署到弹性豆茎的明确指南。

1) eb init --配置文件配置文件名称(配置文件名称将位于.aws >config中)

2)输入序列号,根据需要选择默认区域。

3)输入序列号,选择要使用的应用程序。

4) eb列表

5) eb使用(列表中的名称)

6) eb状态(会给你状态)就是这样,初始化完成了。现在,如果您想要更改环境,只需使用以下命令。

  • eb setenv RACK_ENV=staging (需要一段时间)。
  • eb deploy (在git暂存之后)。

你完成了!

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13580624

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档