В качестве сервера — vps на Debian 7 x86 (openvz/1 core Xeon/256MB RAM/5GB SSD). Используемый стек: Rails5,Passenger + Nginx, Postgress.
1. Базовая настройка
apt-get update apt-get install nano mc curl git sudo
На сервере не установлена локаль по-умолчанию. Для этого выполним
dpkg-reconfigure locales
Выберем нужную локаль для сервера и перезалогинимся на сервер.
2. Устанавливаем ruby с помощью rvm
Установку rvm, ruby нужно выполнять не от рута. Создадим нового пользователя
useradd master passwd master mkdir /home/master chmod -R 777 /home/master #Вот так делать не надо
Разрешим sudo. Для этого добавим в /etc/sudoers строчку
master ALL=(ALL:ALL) ALL
Устанавливаем RVM
gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 \curl -sSL https://get.rvm.io | bash -s stable
Перезалониваемся на сервере.
Что-бы не писать каждый раз /bin/bash —login выполним(от рута)
chsh master -s /bin/bash
Устанавливаем нужную версию ruby
rvm install 2.3.1 rvm use 2.3.1 --default
Устанавливаем rails
gem install rails
3. Passenger + Nginx
Устанавливаем согласно документации
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 561F9B9CAC40B2F7 sudo apt-get install -y apt-transport-https ca-certificates sudo sh -c 'echo deb https://oss-binaries.phusionpassenger.com/apt/passenger wheezy main > /etc/apt/sources.list.d/passenger.list' sudo apt-get update sudo apt-get install -y nginx-extras passenger
Раскомментируем в файле /etc/nginx/nginx.conf строку
# include /etc/nginx/passenger.conf;
Выполняем проверку
sudo /usr/bin/passenger-config validate-install
4. Деплой
Устанавливаем nodejs. В составе стандартного набора пакетов Node.js отсутствует.
В /etc/apt/sources.list добавляем репозиторий
deb http://ftp.de.debian.org/debian/ jessie main contrib non-free
Чтобы в дальнейшем пакеты ставились из stable дистрибутива, пропишем в файл /etc/apt/apt.conf.d/70default-release настройки для выбора пакетов строку
APT::Default-Release "stable";
Обновляем пакеты
apt-get update
Установка nodejs
sudo apt-get -t jessie install nodejs npm
Клонируем из репозитория проект или создаем новый. В данном примере создам новый проект в каталоге /home/master/www
rails new onepass cd onepass rails db:migrate bundle install
Продолжение скоро…
7w08fb
a6rvnw
hwjsio
1kubqt
kydxai
avsqv2
fetjx7
nxn0u8
aw1jb1