Какой есть хороший мануал по настройке сервера для rails-приложения?

Господа, требуется помощь с выбором.

В общем ситуация такая: требуется на локальной машине в офисе установить сервер и подготовить его для использования rails-приложения. Требуется хороший мануал по настройкам всего-всего, так как опыта настройки всех этих штук у меня еще нету.

Приложение использует:
Rails 4
Postgresql
С какими камнями граблями столкнуться при настройке сервера?
Нужно сделать все самому, так как инициатива моя и все шишки тоже :)
  • Вопрос задан
  • 2802 просмотра
Решения вопроса 1
@TM_ID
Я настраиваю сервер так:

Первым делом создаю non-root, sudoer пользователя с которого все устанавливаю и деплою(через capistrano, например).

# non-root user
useradd -d /home/deployer -m deployer
# password for deployer
passwd deployer
# deployer a sudoer
visudo
deployer ALL=(ALL) ALL

Логинимся как deployer

Устанавливаю RVM.
# RVM
\curl -sSL https://get.rvm.io | bash -s stable
# RVM requirements
rvm requirements

Через RVM ставлю Ruby.
# Ruby
rvm install 2.1.2
rvm use 2.1.2 --default

Rails без доков(--no-document)
# Rails
gem install rails 4.1.0 --no-document

NodeJS для js runtime
# ExecJS NodeJS Javascript runtime
sudo apt-get install nodejs

MySQL/PostgreSQL

Apache
# Install Apache packs
sudo apt-get install apache2 curl git build-essential zlibc zlib1g-dev zlib1g libcurl4-openssl-dev libssl-dev libopenssl-ruby apache2-prefork-dev libapr1-dev libaprutil1-dev libreadline6 libreadline6-dev


Passenger
# Passenger
gem install passenger
# Apache module
passenger-install-apache2-module

Настройка Apache
# etc/apache2/mods-available/passenger.load
LoadModule passenger_module /home/deployer/.rvm/gems/ruby-2.1.2/gems/passenger-4.0.37/buildout/apache2/mod_passenger.so


# etc/apache2/mods-available/passenger.conf
<IfModule mod_passenger.c>
     PassengerRoot /home/deployer/.rvm/gems/ruby-2.1.2/gems/passenger-4.0.37
     PassengerDefaultRuby /home/deployer/.rvm/gems/ruby-2.1.2/wrappers/ruby
</IfModule>


Активируем модуль пассажира для апач
sudo a2enmod passenger

Хост для апач
# etc/apache2/sites-available/sitename
<VirtualHost *:80>
  ServerName sitename.com
  DocumentRoot /home/deployer/ror_apps/sitename/current/public # путь для capistrano. либо свой
  <Directory /home/deployer/ror_apps/sitename/current/public>
     AllowOverride all
     Options -MultiViews
  </Directory>
</VirtualHost>


Активируем хост
sudo a2ensite sitename

Рестарт конфига Apache
sudo service apache2 reload

Далее настраиваем ssh ключи для деплоя и гита.
Ставим и настраиваем capistrano и получаем удовольствие от деплоя.
bundle exec cap deploy

Есть вопросы - спрашивайте.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Freika
@Freika
Senior Ruby on Rails developer
Да сотни их. https://gorails.com/setup/ubuntu/14.04 выбирайте ось.
Для меня последовательность такая:
RVM
Ruby
Git
PostgreSQL
...
PROFIT
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы