使用Elastic Beanstalk部署Simple Rails应用程序不起作用



我正在尝试向Elastic Beanstalk启动rails应用程序。

在这里的教程中:http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/create_deploy_Ruby_rails.html

我正在进行第6.3步,其中包括更新应用程序。

eb status --verbose

返回就绪且为绿色。

尽管如此,它给我的url上显示的页面上写着:

"您要查找的页面不存在。

你可能打错了地址,或者页面移动了。"

本教程期望呈现"Welcome board You are ride Ruby on Rails!"页面。

这里可能有什么问题?我对这方面还很陌生,所以我不知道从哪里开始诊断这个问题。

我已经为这个应用程序的本地目录运行了rails,它确实正确地显示了"欢迎乘坐RubyonRails!"页面。

谢谢!


当我执行eb状态-详细时,它确实会返回绿色并准备就绪,尽管在此之前,它会两次向我发出这样的错误:

error: git-credential-osxkeychain died of signal 11
error: git-credential-osxkeychain died of signal 11

我在这里学习了教程https://help.github.com/articles/set-up-git以修复该信号11的错误。错误已经消失了,尽管访问我的网站所在的url仍然会给我同样的错误页面。


好的,我修复了信号11的错误,尽管它仍然没有呈现RubyonRails欢迎页面。


当我从Elastic Beanstalk UI创建应用程序时,示例应用程序运行良好。但当我将计算机上的应用程序文件上传到EB并部署链接以查看应用程序时,该应用程序会显示"403 Forbidden"。

同样,这只是一个普通的应用程序,在本地运行良好。

EB UI也说"绿色健康"。


我重新安装了git并更新了它,然后继续教程,尽管仍然没有呈现正确的页面。基本上我完成了教程,除了终止部分。

现在我得到一个502坏网关错误。


使用"eblog",我发现我不断收到关于安装mysql2并将其添加到gemfile的消息,我已经完成了这项操作,并运行了"bundle install"。纳达。

然而,它被列入了我的宝石清单。


当然,没有太多可能出错的线索,但您可以在通过ssh连接到实例后查看日志。

简而言之:

  • 通过ssh 连接到您的实例

  • 转到/var/app/current/log

  • 读取生产日志文件

我必须执行以下操作来停止502坏网关错误。在使用Dashboard上传应用程序并选择Ruby环境后,转到您的开发框上的rails应用程序并安装eb cli

$pip安装awsebcli
$eb初始化

选择默认区域
1) 美国东部-1:美国东部(北弗吉尼亚州)
2) 美国西部-1:美国西部(北加利福尼亚州)
3) 美国西部-2:美国西部(俄勒冈州)
4) eu-west-1:eu(爱尔兰)
5) 欧盟中心-1:eu(法兰克福)
6) ap-south-1:亚太地区(孟买)
7) ap-东南-1:亚太地区(新加坡)
8) ap-东南-2:亚太地区(悉尼)
9) 亚太地区(东京)
10) 亚太地区(首尔)
11) sa-east-1:南美洲(圣保罗)
12) cn-north-1:中国(北京)
(默认值为3):3

选择要使用的应用程序
1) [您创建的eb环境]***选择您在eb上创建的环境
2) [创建新应用程序]
(默认为2):1
$rake机密
[您的超长密钥已返回]
$eb setenv SECRET_KEY_BASE=[返回的超长密钥]

等等,你会看到这个
信息:环境更新正在启动
信息:正在更新环境[您创建的网络环境]的
配置设置
信息:环境健康状况已从正常转变为信息。正在进行配置更新(运行17秒)
信息:已成功将新配置部署到环境。

现在访问URL,应该不会出现坏网关错误。上面的命令创建了一个名为SECRET_KEY_BASE的环境变量,并将其放置在运行应用程序的网络节点上

相关内容

最新更新