Развертывание приложения AWS OpsWorks Ruby on Rails — не удалось найти Rake ни в одном из источников

Привет, я использую AWS OpsWorks для развертывания приложения Ruby on Rails, использующего базу данных MySQL. Я правильно загрузил сервер приложений и сервер базы данных, но посещение IP-адреса сервера приложений приводит к следующей ошибке:

The page you were looking for doesn't exist.

You may have mistyped the address or the page may have moved.

В журналах говорится:

cat /var/log/httpd/error.log

App 4689 stdout: 
App 4689 stderr: /usr/local/lib/ruby/gems/2.2.0/gems/bundler-1.5.3/lib/bundler/spec_set.rb:92:in `block in materialize'
App 4689 stderr: : 
App 4689 stderr: Could not find rake-10.4.2 in any of the sources
App 4689 stderr:  (
App 4689 stderr: Bundler::GemNotFound
App 4689 stderr: )
App 4689 stderr:    from /usr/local/lib/ruby/gems/2.2.0/gems/bundler-1.5.3/lib/bundler/spec_set.rb:85:in `map!'
App 4689 stderr:    from /usr/local/lib/ruby/gems/2.2.0/gems/bundler-1.5.3/lib/bundler/spec_set.rb:85:in `materialize'
App 4689 stderr:    from /usr/local/lib/ruby/gems/2.2.0/gems/bundler-1.5.3/lib/bundler/definition.rb:133:in `specs'
App 4689 stderr:    from /usr/local/lib/ruby/gems/2.2.0/gems/bundler-1.5.3/lib/bundler/definition.rb:178:in `specs_for'
App 4689 stderr:    from /usr/local/lib/ruby/gems/2.2.0/gems/bundler-1.5.3/lib/bundler/definition.rb:167:in `requested_specs'
App 4689 stderr:    from /usr/local/lib/ruby/gems/2.2.0/gems/bundler-1.5.3/lib/bundler/environment.rb:18:in `requested_specs'
App 4689 stderr:    from /usr/local/lib/ruby/gems/2.2.0/gems/bundler-1.5.3/lib/bundler/runtime.rb:13:in `setup'
App 4689 stderr:    from /usr/local/lib/ruby/gems/2.2.0/gems/bundler-1.5.3/lib/bundler.rb:119:in `setup'
App 4689 stderr:    from /usr/local/lib/ruby/gems/2.2.0/gems/bundler-1.5.3/lib/bundler/setup.rb:17:in `<top (required)>'
App 4689 stderr:    from /usr/share/ruby/vendor_ruby/2.0/rubygems/core_ext/kernel_require.rb:55:in `require'
App 4689 stderr:    from /usr/share/ruby/vendor_ruby/2.0/rubygems/core_ext/kernel_require.rb:55:in `require'

Я читал, что это ошибка установки, пути или разрешений, и видел другие решения, которые используют rbenv для удаления/переустановки rake, но OpsWorks не использует rbenv.

Пожалуйста, порекомендуйте.


person s2t2    schedule 11.01.2016    source источник


Ответы (1)


Похоже, что установка OpsWork/Agent была прервана. Гемы Rake/Bundler устанавливаются по умолчанию. Поскольку мы не знаем экземпляр/стек и т. д. В целом кажется, что этап установки не был успешным.

Пример в экземпляре OpsWorks:

[root@rails-app2 ~]# su - deploy Последний вход: четверг, 18 июня, 00:39:20 UTC 2015

[deploy@rails-app2 ~]$ которые грабли /usr/local/bin/rake

[deploy@rails-app2 ~]$ какой упаковщик /usr/local/bin/bundler

[deploy@rails-app2 ~]$ какой пакет /usr/local/bin/bundle

[deploy@rails-app2 ~]$ список гемов

* МЕСТНЫЕ ЖЕМЧУЖИНЫ *

bigdecimal (1.2.4)
упаковщик (1.5.3)
io-console (0.4.3)
json (1.8.1)
kgio (2.9.3)
minitest (4.7) .5)
psych (2.0.5)
стеллаж (1.6.2)
капли дождя (0.13.0)
грабли (10.1.0)
rdoc (4.1.0)
test-unit (2.1.8.0)
unicorn (4.7.0)
[deploy@rails-app2 ~]$ выход

[root@rails-app2 ~]# экземпляр opsworks-agent-cli

Отчет о состоянии агента экземпляра AWS OpsWorks:

Последним действием была «настройка» 12 января 2016 г., 18:01:12. Состояние агента UTC: агент AWS OpsWorks работает как PID 23871. Версия агента: 3431-20151222151215, последняя версия. Стек OpsWorks: MyWebApps OpsWorks Layers: rails- app Экземпляр OpsWorks: rails-app2 Идентификатор экземпляра EC2: i-bxxxx06b Тип экземпляра EC2: c3.large Архитектура: x86_64 Общий объем памяти: 3,84 ГБ ЦП: 2x Intel(R) Xeon(R) CPU E5-2680 v2 @ 2,80 ГГц

Место нахождения:

Регион EC2: ap-southeast-2 Зона доступности EC2: ap-southeast-2a

Сеть:

Общедоступный IP-адрес: 54.x.x.232 Частный IP-адрес: 10.x.x.73

[root@rails-app2 ~]#

  • Я бы предложил создать новый экземпляр.

  • Кроме того, обычно с Rails возникают проблемы с миграцией db. Таким образом, можно вручную войти в экземпляр и вручную выполнить то, что делает OpsWorks, и посмотреть, есть ли проблемы с подключением к БД или другие проблемы, связанные с БД/приложением.

Ex: su deploy -c "bundle exec rake RAILS_ENV=production db:migrate"

ХТХ!

person Nitin Sheenu    schedule 13.01.2016
comment
Я попытался выполнить развертывание в новый стек и новые экземпляры. Но теперь я сталкиваюсь со следующей ошибкой: Could not spawn process for application /srv/www/debate_watch_alpha/current: An error occured while starting up the preloader. - person s2t2; 15.01.2016