Лучший способ развернуть Ruby 1.9.2 и 1.8.7 с RVM и Passenger на одном сервере - PullRequest
3 голосов
/ 31 октября 2010

Я хочу развернуть два проекта рельсов. Один с Ruby 1.8.7 и Rails 2.3.8, а другой с Ruby 1.9.2 и Rails 3.0.1.

Я пытаюсь создать ситуацию, когда www.example.com - это Ruby 1.9.2, а shop.example.com - это Ruby 1.8.7.

Какой лучший способ настроить это с помощью Passenger и RVM?

Ответы [ 2 ]

3 голосов
/ 31 октября 2010

Есть сообщение в блоге, объясняющее в значительной степени то, что вы хотите от людей, говорящих здесь: http://blog.phusion.nl/2010/09/21/phusion-passenger-running-multiple-ruby-versions/

(На самом деле это та же информация, что и у Сэма, но я думаю, что это оригинал с более четкой разметкой)

Это в основном включает запуск отдельной версии для пассажиров с одной версией ruby ​​и передачу ей запросов от apache / nginx, на котором запущена другая версия.

1 голос
/ 31 октября 2010

С точки зрения версии рельсов это довольно просто, потому что вам просто нужно freeze (что означает сохранение) версий рельсов, которые вы хотите в vendor/rails директории.

 rake rails:freeze:edge RELEASE=2.3.8

И тогда вы можете просто оставить значение по умолчанию 3,0 или наоборот или заморозить оба.

Что касается разных версий ruby, я никогда этого не делал. Для меня это просто меньшая головная боль - иметь дефолт и затем заморозить драгоценные камни. Но вот что работает с тем, что вы делаете: http://www.sportscomet.com/sports_thread/view/id-26403

...