Назад | Перейти на главную страницу

Как установить Phusion Passenger с помощью RVM на сервере Rackspace?

Я собираюсь начать размещать свои собственные приложения Ruby. У меня уже установлен RVM на моем рабочем сервере. Теперь я хочу установить Passenger.

У меня по умолчанию установлен Ruby 1.9.2. Я установил пассажирский драгоценный камень и побежал passenger-install-apache2-module. Это отобразило список отсутствующих зависимостей, одна из которых - поддержка OpenSSL для Ruby. Он объяснил, что мне нужно переустановить Ruby с поддержкой OpenSSL. Я не знаю, как это сделать, и не знаю, почему этого нет. Вот список других ошибок:

Похоже, многие из этих вещей уже должны были быть доступны. Я неправильно установил RVM? Есть ли более простой способ запустить Passenger без установки множества зависимостей, которые я никогда не смогу использовать позже? Что я должен делать?

Обновить: Я забыл упомянуть, что это сервер RedHat, размещенный в Rackspace. Я не уверен, есть ли способ, рекомендуемый Rackspace. Я знаю, что у них есть собственный список надежных пакетов / репозиториев.

Мне пришлось установить Passenger (в частности, mod_passenger), и вот как я это сделал. Моя среда - CentOS 6, x86_64.

  1. Установите необходимые rpms

    yum install httpd httpd-devel openssl-devel mod_ssl
    
  2. Добавить репо EPEL. Не забудьте отредактировать /etc/yum.repos.d/epel.repo и отключить его, установив для параметра enabled значение 0. Фактический источник для epel-release-6-5.noarch.rpm будет не с fedoraproject.org / ... as вы фактически попадете на зеркальный сервер.

    wget http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-5.noarch.rpm
    rpm -ivh epel-release-6-5.noarch.rpm
    
  3. Настройте использование репозитория yum на сайте stealthymonkeys.com, на котором размещаются пакеты RPM для пассажиров. Устанавливает mod_passenger, который требует репозитория epel для некоторых зависимых rpms.

    rpm -Uvh http://passenger.stealthymonkeys.com/rhel/6/passenger-release.noarch.rpm
    
  4. Установите mod_passenger, используя следующую команду.

    yum   --enablerepo=epel  --enablerepo=passenger  install mod_passenger
    

Не могу дать лучшего ответа, так как я не знаю вашего окружения, но, надеюсь, это поможет.

Rackspace не сильно помог, но все оказалось проще, чем я думал, и проблем не возникло. Я просто следовал указаниям, которые мне дал пассажир. Он сказал, что мне нужно установить кучу пакетов, поэтому я пробежался по каждому из них по одному (т.е. sudo yum install openssl-devel). Ни один из пакетов не конфликтовал с другими пакетами, которые я установил, потому что все они были новыми (мне не нужно было их обновлять). Затем я снова запустил программу установки для пассажиров, и она прекрасно скомпилировалась.

Единственная проблема, с которой я столкнулся, заключается в том, что Passenger позволяет запускать только одну версию Ruby, поэтому, когда вы устанавливаете Passenger через RVM, убедитесь, что вы rvm use- выбирая версию Ruby, которую вы хотите использовать.