У меня есть приложение rails, которое я разрабатываю для Windows с Rails 2.3.5, использую sqlite3 в качестве своего механизма базы данных и внутренний сервер Mongrel в качестве своего веб-сервера.
Я развертываю это приложение на компьютере с Linuxзапуск Rails 2.1.0, использование Postgres в качестве моей базы данных и Apache (вызов dispatch.cgi) в качестве моего веб-сервера.У меня нет прав для обновления нативных установок Ruby или Rails или для собственной установки gems.
Чтобы упростить развертывание (я думал ...), я взял ветку своего кода.база для развернутой системы.В этой ветке я обновил database.yml для ссылки на postgres и запускаю rake rails:freeze:gems
и rake gems:unpack:dependencies
.Затем я экспортировал эту ветку на свой рабочий сервер.
Когда я пытаюсь просмотреть свое приложение на рабочем сервере, я получаю сообщение об ошибке:
Application error
Rails application failed to start properly"
Проверка журналов ошибок Apache, ясм. следующее:
./../config/../vendor/rails/railties/lib/initializer.rb:271:in `require_frameworks': Could not find RubyGem rack (~> 1.0.1) (RuntimeError)
from ./../config/../vendor/rails/railties/lib/initializer.rb:134:in `process'
from ./../config/../vendor/rails/railties/lib/initializer.rb:113:in `send'
from ./../config/../vendor/rails/railties/lib/initializer.rb:113:in `run'
from ./../config/environment.rb:9
from dispatch.cgi:5:in `require'
from dispatch.cgi:5
Я в замешательстве.Если требуется Rack, почему он не был включен в gems:unpack
?Как я могу заставить это работать?
(Если это актуально, vendor$ find . -name rack*
дает следующее:
./rails/railties/lib/rails/rack
./rails/railties/lib/rails/rack.rb
./rails/railties/lib/rails/.svn/text-base/rack.rb.svn-base
./rails/actionpack/test/controller/rack_test.rb
./rails/actionpack/test/controller/.svn/text-base/rack_test.rb.svn-base
./rails/actionpack/lib/action_controller/rack_lint_patch.rb
./rails/actionpack/lib/action_controller/.svn/text-base/rack_lint_patch.rb.svn-base
)