Установка Ruby on Rails: Debian 7 с Apache Passenger и MySQL

Доброго времени суток. Возникла следующая задача: установка Ruby on Rails (далее просто Rails) на сервер под управлением Debian 7 с использованием веб-сервера Apache и его модуля Passenger.

Итак, установка Ruby on Rails на Debian 7. Имеем сервер с установленной ОС Debian 7.

Установка необходимых пакетов (зависимости)

Далее установим все необходимые для этого пакеты:

apt-get install apache2 apache2-prefork-dev ruby1.9.3 rubygems1.8 sqlite3 libsqlite3-dev mysql-server mysql-common mysql-client libmysqlclient-dev curl libcurl4-openssl-dev openssl build-essential

Так, вроде ничего не забыл. Вкратце и по порядку: ставим веб-сервер Apache и его модули для разработки, далее сам язык Ruby и его систему распространения пакетов (gems), ставим необходимые СУБД и их библиотеки для разработки, ставим curl для Rails (не могу в двух словах объяснить почему он нужен, но он НУЖЕН для установки Rails), и напоследок OpenSSL и пакет для компиляции.

Установка NodeJS

Для работы с Railsи необходимо наличие рабочего пакета NodeJS. НО этот пакет доступен только в версии unstable. Для подключения этой ветки в список листов apt вносим такую строчку:

deb http://ftp.debian.org/debian unstable main non-free contrib

Это позволит воспользоваться нужной веткой. А дальше обновляем списки репозиториев и просто ставим NodeJS:

apt-get update
apt-get install nodejs

Делать это советую после установки всех предыдущих пакетов, а посе установки NodeJS — удалить строку, что бы в систему не ставились нестабильные пакеты.

Установка и настройка модуля Passenger

Далее нам необходимо установить модуль passenger для нашего сервера Apache. Ставить будем из gems — мне так кажется проще.

gem install passenger

Далее, после окончания установки гема, нам необходимо его подключить и настроить для работы в Apache:

passenger-install-apache2-module

Установщик пакета проверит наличие необходимых для установки модуля пакетов, после чего примется за его  сборку и установку, это может занять какое то время.

После установки будет выдана информация для настройки самого сервера. Например такие (все зависит от версии Ruby:

Установка Ruby on Rails

Установка Ruby on Rails

Теперь надо внести эти строки конфига в соответствующие файлы.

Это в основной файл настроек Apache:

LoadModule passneger_module /var/lib/gems/1.9.1/gems/passenger-4.0.5/libout/apache2/mod_passenger.so
PassengerRoot /var/lib/gems/1.9.1/gems/passenger-4.0.5
PassengerDefaultRuby /usr/bin/ruby1.9.1

Это в файл настройки конкретного узла:

<VirtualHost *:80>
    ServerName www.yourhost.com
    DocumentRoot /somewhere/public
    <Directory /somewhere/public>
        AllowOverride all
        Options -MultiViews
    </Directory>
</VirtualHost>

Следует помнить, что папка в DocumentRoot должна ОБЯЗАТЕЛЬНО указывать на папку public вашего проекта.

Установка Rails

Вот и подошли к самому основному — установим рельсы! ) А так как Rails — это тоже пакет для Ruby, то мы его тоже установим через gem’ы.

gem install rails

Установка займет некоторое время, т.к будет ставиться большой список зависимостей для фреймворка.

На этом все. Rails и все необходимости установлены и можно попробовать создать тестовое приложение. Ну. это я думаю вы уже умеете делать. Если нет — пишите комментарии и я дополню статью.

Всем спасибо кто осилил ) Буду рад любому фидбэку.



3 Комментарии

  • Спасибо, только с вашей помощью смог настроить рельсы.
    Теперь будем пробывать учиться)

  • Спасибо за материал! Порекомендовал ваш блог друзьям!

  • Добавить комментарий

    Ваш e-mail не будет опубликован. Обязательные поля помечены *

    Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

    Яндекс.Метрика