RVM и Bundle в производстве - PullRequest
       12

RVM и Bundle в производстве

1 голос
/ 17 августа 2011

Я в процессе обновления моего приложения rails первоначально на ruby ​​1.8.7 и rails 2.3.5 до ruby ​​1.9.2 и rails 2.3.12, и пытаюсь использовать RVM и упаковщик, ожидая, что миграция будет проще , Все отлично работает на моей локальной машине, но мне очень трудно использовать RVM и развернуть свой пакет в производстве.

Прежде всего, я не уверен, правильно ли RVM загружает мою среду по умолчанию. Я сделал многопользовательскую установку с моим пользователем root. Затем я набрал:

rvm - использование по умолчанию 1.9.2

и добавлено:

[[ -s "/usr/local/rvm/scripts/rvm" ]] && ."/usr/local/rvm/scripts/rvm"

моему пользователю root ~ / .bash_profile, но когда я открываю новую оболочку и набираю «which ruby», она ссылается на «/ usr / local / rvm / bin / ruby». Когда я набираю «rvm default», затем «which ruby», я получаю «/usr/local/rvm/rubies/ruby-1.9.2-p290/bin/ruby», как и ожидалось. Поэтому я не уверен, что RVM установлен и настроен правильно.

Затем мой пакет устанавливается в (я верю) в:

"/ главная / веб-приложение / WWW / общий / пакет"

и когда я набираю "список комплектов", я вижу установленные мной драгоценные камни (включая мои рельсы 2.3.12). Но когда я делаю «список драгоценных камней», я вижу только:

*** LOCAL GEMS ***

bundler (1.0.18) 
daemon_controller (0.2.6) 
fastthread (1.0.7)
passenger (3.0.8) 
rack (1.3.2) 
rake (0.9.2 ruby)

Драгоценные камни из моего комплекта не входят в список. Так что сейчас, на моем живом сайте (вздох), пассажир не может найти Rails 2.3.12 (доступный из комплекта, а не в Local Gems). Не знаете, как сообщить пассажиру, что в папке shared / bundle есть несколько драгоценных камней ...

Хотелось бы помочь!

- Редактирует:

1: Я неправильно установил пассажир. Я использовал

sudo passenger-install-apache2-module

Использование sudo привело к установке на моем системном ruby, а не на RVM. После того, как я запустил команду БЕЗ sudo , консоль дала мне правильные строки для вставки в мой файл apache2.conf, и я смог запустить свой сервер. Хороший первый шаг, но теперь я не могу начать думать - сфинкс: он жалуется, что не может найти Rails 2.3.12 ...

  1. По умолчанию Rails 2.3 загружает драгоценные камни только из Gemset. Мне пришлось добавить небольшой код, чтобы сообщить моему приложению о загрузке также входящих в комплект Gems, как объяснено здесь .

1 Ответ

2 голосов
/ 02 сентября 2011

При использовании RVM установите Passenger без команды sudo. Просто сделай:

пассажиро-установка-apache2-модуль

Это даст вам строки конфигурации, соответствующие вашей среде RVM (в отличие от env вашей системы Ruby).

...