Новые тарифы на хостинг с PHP 7!

Хостинг Ruby on Rails. Установка Ruby on Rails на сервер.

Ruby on Rails - фреймворк, написанный на языке программирования Ruby для создания веб-приложений. Ruby on Rails работает на практически любой ОС (рекомендуется *nix системы) со многим веб-серверами (рекомендуется Apache или nginx+passenger, в нашем посте мы рассмотрим как раз второй вариант самостоятельной установки RoR) и СУБД (MySQL, PostgreSQL, SQLite, Oracle, Firebird, и т.д.). Разработчикам на RoR мы предлгаем качественный Ruby on Rails хостинг, это подразумевает - заказ одного из тарифов VPS сервера в Украине или  VPS в Европе с предустановленным фреймворком - т.е. полностью готовый сервер для разработки приложения, согласно Ваших требований и пожеланий (в комментариях к заказу сервера необходимо указать, что необходима установка ruby, а также все, что бы Вы хотели видеть на этом сервере и получить от этого сервера). В данном же посте мы рассмотрим и опишем установку  Ruby on Rails на свой сервер (vps или ds).

Хостинг Ruby on Rails
 
Как показывает практика, наиболее экономично поставить использовать RoR в связке nginx+passenger. Установим эту связку используя наименее самосборный софт, для простоты дальнейшей его поддержки. Устанавливаем необходимые дополнительные утилиты и компиляторы:
 Будем делать свой rpm:
# yum -y install rpm-build
 Компиляторы:
# yum -y install make gcc gcc-c++
 Дополнительные библиотеки для сборки:
# yum -y install pcre-devel zlib-devel openssl-devel
 Устанавливаем ruby, rubygems с epel:
# rpm -ihv http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-4.noarch.rpm
# yum update
# yum -y install ruby ruby-devel rubygems rubygem-rails rubygem-fastthread rubygem-sqlite3-ruby
Скачиваем nginx.src.rpm, можно отсюда:
wget http://centos.alt.ru/pub/nginx/0.8/RHEL/SRPMS/nginx-0.8.53-2.el5.src.rpm
 Устанавливаем:
# rpm -ivh nginx-0.8.53-2.el5.src.rpm
 После выполнения данной операции исходники nginx, а также скрипты были установлены в /usr/src/redhat/SOURCES/, а spec файл (инструкция для сборки rpm пакета) в /usr/src/redhat/SPECS/.
Редактируем файл nginx.spec под наши нужды:
--add-module=%{_builddir}/passenger/ext/nginx \
В папку /usr/src/redhat/BUILD скачиваем архив passenger:
# cd /usr/src/redhat/BUILD
# wget http://rubyforge.org/frs/download.php/71376/passenger-2.2.15.tar.gz
# tar xvf passenger-2.2.15.tar.gz
# mv passenger-2.2.15 passenger
Собираем rpm nginx
# rpmbuild -ba nginx.spec
rpm nginx будет в папке /usr/src/redhat/RPMS/i686
# rpm -ivh nginx-0.8.53-2.i686.rpm
 Проверяем конфигурацию на ошибки, ставим nginx в автозагрузку, стартуем nginx.
# nginx -t
# chkconfig nginx on
# service nginx start

 Конфигурация Nginx(в /usr/local/app у нас будет наше RoR приложение):

user  nginx;
worker_processes  10;
worker_rlimit_nofile 100000;
error_log   /var/log/nginx/error.log;
pid        /var/run/nginx.pid;
events {
    worker_connections  1024;
    use epoll;
}
http {
    passenger_root /usr/local/passenger;
    passenger_default_user root;
    passenger_ruby /usr/local/passenger/ruby.sh;
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;
    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';
    access_log  /var/log/nginx/access.log  main;
    sendfile           on;
    tcp_nopush      on;
    tcp_nodelay     on;
    server_tokens   off;
    keepalive_timeout  65;
    # Load config files from the /etc/nginx/conf.d directory
    include /etc/nginx/conf.d/*.conf;
    server {
                listen       3000;
                server_name  _;
                root /usr/local/app/public;
                passenger_enabled on;
                rails_env development;
                location / {
                passenger_enabled on;
                }
           }
}

 Копируем папку /usr/src/redhat/BUILD/passenger в папку /usr/local
 В папку /usr/local/passenger прописываем скрипт ruby.sh
#!/bin/bash
export PATH=$PATH:/usr/sbin:/sbin
/usr/bin/ruby $1
 Устанавливаем права 755 на данный файл
# chmod 755 ruby.sh
 Можно проверять работу приложения - открываем в браузере:
http://IP:3000
IP - IP-адрес нашего сервера.
 
« Пред.   След. »
Отзывы клиентов
Блог
Основные FTP команды в Linux

FTP (File Transfer Protocol - протокол передачи файлов) — это популярный сетевой протокол, который используется для копирования файлов с одного компьютера на другой в локальной сети, либо в сети Интернет. FTP является од...

Дальше...
 

Не приходит смс от pp.ua для активации домена - есть решение! Как активировать домен pp.ua без sms через бота Telegram?

 В соответствии с правилами домена pp.ua домен делегируется только после подтверждения регистрации на сайте pp.ua. Для подтв...

Дальше...
 

 


код кнопки:
Мы принимаем: Webmoney Яндекс.Деньги RBK.Деньги Visa и MasterCard Счет юр.лицам Приват 24 Z-Payment MoneyBookers Все способы оплаты
                  
© 2008-2017 HostingHutor.com - Украина, Одесса. Тел/факс: +38 048 7017698 3wave - Дизайн сайтов
Хостинг Хутор: землю - крестьянам, хостинг - вебмастерам! | Бесплатный хостинг | Комплекты видеонаблюдения Вебмастеру в помощь - Askwebmaster