#ruby-on-rails #ruby #ruby-on-rails-3 #passenger
#ruby-on-rails #ruby #ruby-on-rails-3 #пассажир
Вопрос:
Я пытаюсь развернуть свое приложение Rails 3.0.1, которое работает с Ruby 1.9.2.
Однако я заметил, что на сервере установлен Rails 1.8.7.
Какие шаги я должен предпринять, чтобы установить Ruby 1.9.2 на сервер и заставить мое приложение использовать его?
Я использую Apache и Passenger.
Ответ №1:
Я бы рекомендовал установить RVM и использовать его для установки нужной версии Ruby на сервере.
Вот краткое изложение его преимуществ в производственной среде:
RVM позволяет пользователям развертывать каждый проект в своей собственной полностью автономной и выделенной среде — от конкретной версии ruby вплоть до точного набора необходимых gems для запуска приложения. Наличие точного набора драгоценных камней также позволяет избежать конфликта версий между проектами, вызывающего труднопрослеживаемые ошибки и многочасовое выпадение волос. С RVM НЕ устанавливаются НИКАКИЕ ДРУГИЕ драгоценные камни, кроме тех, которые требуются. Это делает эффективной работу с несколькими сложными приложениями, каждое из которых имеет длинный список зависимостей gem. RVM позволяет нам легко тестировать обновления драгоценных камней, переключаясь на новый чистый набор драгоценных камней для тестирования, оставляя наш исходный набор нетронутым. Он достаточно гибкий, чтобы даже иметь набор драгоценных камней для каждой среды или ветви разработки — или даже по вкусу отдельного разработчика!
Это очень просто в настройке и использовании, особенно по сравнению с самостоятельным управлением версиями Ruby. Я сделал и то, и другое, и теперь мне гораздо больше нравится RVM. После установки RVM использовать Ruby 1.9.2 так же просто, как:
rvm install 1.9.2
rvm use 1.9.2
И затем вы можете проверить, какую версию Ruby использует ваша производственная среда с:
ruby -v
Ответ №2:
Предполагая, что вы используете Apache, переустановите Passenger с
$ passenger-install-apache2-module
при активном Ruby 1.9.2. Если вы используете RVM, просто введите rvm use 1.9.
2, чтобы сделать эту версию Ruby активной. Следуйте инструкциям на экране, чтобы изменить ваш httpd.conf.