AWS Elastic Beanstalk错误 - 乘客

时间:2015-03-06 06:34:34

标签: ruby-on-rails amazon-web-services passenger elastic-beanstalk

我尝试了各种直观的解决方案,然后尝试了显然帮助他人的解决方案。我已经旋转并终止了我的Rails 4应用程序大约10次。所以...我以为我转过来看看是否有人知道答案。

这是日志文件:

[ 2015-03-06 06:12:27.0070 2619/7fa0f6d60740 agents/Watchdog/Main.cpp:538 ]: 
Options: { 'analytics_log_user' => 'webapp', 'cleanup_pidfiles' => 
'L3RtcC9wYXNzZW5nZX*********************yL3RlbXBfZGlyX3RvdWNoZXIucGlk', 
'default_group' => 'webapp', 'default_python' => 'python', 'default_ruby' => 
'/opt/rubies/ruby-2.1.5/bin/ruby', 'default_user' => 'webapp', 'log_level' => 
'0', 'max_pool_size' => '6', 'passenger_root' => '/tmp/passenger-
standalone.1fcb7jr/locations.ini', 'passenger_version' => '4.0.53', 
'pool_idle_time' => '300', 'prestart_urls' => 'aHR0cDovLzAuMC4wLjA6ODAA', 
'temp_dir' => '/tmp', 'union_station_gateway_address' => 
'gateway.unionstationapp.com', 'union_station_gateway_port' => '443', 
'user_switching' => 'false', 'web_server_passenger_version' => '4.0.53', 
'web_server_pid' => '2618', 'web_server_type' => 'nginx', 
'web_server_worker_gid' => '496', 'web_server_worker_uid' => '497' }
[ 2015-03-06 06:12:27.3877 2622/7fac802f6740 agents/HelperAgent/Main.cpp:650]:
PassengerHelperAgent online, listening at  
unix:/tmp/passenger.1.0.2618/generation-0/request
[ 2015-03-06 06:12:28.2222 2630/7fe1e0b67740 agents/LoggingAgent/Main.cpp:321 
]: PassengerLoggingAgent online, listening at 
unix:/tmp/passenger.1.0.2618/generation-0/logging
[ 2015-03-06 06:12:28.2223 2619/7fa0f6d60740 agents/Watchdog/Main.cpp:728 ]: 
All Phusion Passenger agents started!
2015/03/06 06:12:29 [error] 2638#0: *3 "/var/app/current/public/index.html" is 
not found (2: No such file or directory), client: 127.0.0.1, server: _,
request: "HEAD / HTTP/1.1", host: "0.0.0.0"
2015/03/06 06:13:35 [error] 2638#0: *7 "/var/app/current/public/index.html" is 
not found (2: No such file or directory), client: 172.3*.**.***, server: _, 
request:   "GET / HTTP/1.1", host: "****************-env.elasticbeanstalk.com"

我有宝石乘客'在我的宝石文件中...我在两个开发中都尝试过(因为我已经看到了生产和乘客的一些错误)和生产,我发誓我从来没有遇到过上传到弹性beanstalk这样的麻烦。事实上,这是一个非常简化的应用程序,只有一个静态页面,既可以为用户设计,也可以为主动管理员设计。在我的本地计算机上的任一环境中都没有错误或问题。

我甚至从未意识到我需要index.html文件...我一直认为只有在php和其他语言中,Rails会根据你的需要为你处理这个问题。就像我说的那样,我以前从未见过这个问题。因此,为了测试我在公共文件夹中放入一个index.html文件,我可以在我的本地计算机上看到它在我的根路径之前,但在AWS中仍然没有骰子。我更愿意将其放入其中一个像Puma这样的其他配置中。我看到Puma和Nginx配置可用,但不在GUI中,这是我计划只是" drop"这暂时和它一起完成。我正在使用t2.small实例。

非常感谢任何帮助或指示。感谢。

更新:我现在尝试使用Puma等来推动Git。无处不在。这没有道理。我甚至把它移到了#Hello; Hello World"应用程序仍然没有。我完成了AWS的工作。这是荒唐的。比每年都有大量问题的iOS版本差得多。

2 个答案:

答案 0 :(得分:1)

确定。在今天之后,我得到了妥善处理和托管。如果这有助于某人...这里是关键的要点:

1)如果您使用明显的CLI,则有一个Puma选项。 GUI中还有一个选项,但它读起来像一个句子而不是逻辑选择框。它首先存在于要安装的语言选择下面的首页上。如果您遇到乘客错误并希望使用Puma,那么您需要更改。

2)我已经安装了一个包含ActiveAdmin角色的User模型。 ActiveAdmin正在从GitHub中提取gem,我正在使用已经安装了GitHub的机器。这真的是问题......切换到生产并进入ElasticBeanstalk我忘了git还没有安装。在多次返回错误之后,常见的错误是

# :github => 'activeadmin/activeadmin'+ '[' -d /vendor/cache ']'
+ bundle install
Don't run Bundler as root. Bundler can ask for sudo if it is needed, and
installing your bundle as root will break this application for all non-root
users on this machine.

You need to install git to be able to use gems from git repositories.

[CMD-Startup/StartupStage0/AppDeployPreHook/10_bundle_install.sh] : Activity failed.

这位于eb-activity.log。

因此,如果这类似于您发生的任何事情,您可以执行以下操作:

1)使用正确的服务器启动您的实例。

2)如果您收到错误,请查看上面提到的活动日志。 (所有日志)

3)如果错误同样失败,则无需删除实例。让它继续运行。

4)SSH到您刚刚创建的服务器实例。运行

sudo yum update 

这是可能的推荐。然后运行

sudo yum install git

5)上传相同的文件并命名版本0.1,如果这是你唯一的错误,它应该是绿色的。点击链接和Voila。

答案 1 :(得分:1)

对于git二进制问题:如果更多实例正在旋转,它将再次失败。您可以通过在$ ROOT / .ebextensions下添加一个配置来避免这种情况,该配置将用于任何新实例。

# Install git in order to be able to bundle gems from git
packages:
  yum:
    git: []