Rails 3 в рабочем режиме (apache и thin) не может найти rubygems - PullRequest
1 голос
/ 01 февраля 2011

Я заранее прошу прощения, если этот вопрос является дубликатом, но я много занимался поиском и не нашел ответов, которые помогли бы решить мою проблему.Я запускаю приложение Rails 3 на сервере Ubuntu с прокси-сервером Apache.Я могу запустить один экземпляр thin или WebBrick, и мое приложение загружается на порт 3000. Я использую инструкции Slicehost о том, как использовать Apache и Thin для обслуживания Rails (что я работал в прошлом), но всякий раз, когда я пытаюсьчтобы запустить тонкие демонизированные процессы, журналы для каждого тонкого сервера выглядят так:

/[ my application's location]/config/boot.rb:2:in `require': no such file to load -- rubygems (LoadError)
        from /home/geoff/ldb/doubleday/config/boot.rb:2
        from /home/geoff/ldb/doubleday/config/application.rb:1:in `require'
        from /home/geoff/ldb/doubleday/config/application.rb:1
        from /home/geoff/ldb/doubleday/config/environment.rb:2:in `require'
        from /home/geoff/ldb/doubleday/config/environment.rb:2
        from /usr/lib/ruby/1.8/rack/adapter/rails.rb:43:in `require'
        from /usr/lib/ruby/1.8/rack/adapter/rails.rb:43:in `load_application'
        from /usr/lib/ruby/1.8/rack/adapter/rails.rb:23:in `initialize'
        from /usr/lib/ruby/1.8/rack/adapter/loader.rb:36:in `new'
        from /usr/lib/ruby/1.8/rack/adapter/loader.rb:36:in `for'
        from /usr/lib/ruby/1.8/thin/controllers/controller.rb:163:in `load_adapter'
        from /usr/lib/ruby/1.8/thin/controllers/controller.rb:67:in `start'
        from /usr/lib/ruby/1.8/thin/runner.rb:174:in `send'
        from /usr/lib/ruby/1.8/thin/runner.rb:174:in `run_command'
        from /usr/lib/ruby/1.8/thin/runner.rb:140:in `run!'
        from /usr/bin/thin1.8:6

Я использую Ruby 1.9.2, RubyGems 1.5.0 и RVM.Я могу запустить приложение rails как недемонизированный процесс в оболочке как root, сам или www-data.Кажется, что всякий раз, когда я пытаюсь запустить это как демон, он не загружает пути должным образом.Я пытался вставить переменные окружения в некоторые файлы, чтобы помочь rails находить Rubygems, но это, похоже, не работает.Есть идеи, как помочь Rails найти Rubygems, когда он запускается демоном?

Спасибо, Джефф

1 Ответ

0 голосов
/ 21 февраля 2011

Это похоже на ошибку RVM.Вы должны проверить, как вы загружаете свой тонкий сервер, для этого нужно использовать оболочку RVM или что-то подобное для настройки правильных двоичных файлов и наборов гемов.

...