Установка й налаштування додатка Ruby в cPanel

Усім привіт, сьогодні у цій статті ми розглянемо можливість установки і налаштування Ruby ​​on rails-додатків на робочий (продакшн) сервер. В якості такого сервера будемо розглядати звичайний шаред-сервер на базі Centos 6.7 з попередньо встановленою панеллю управління WHM/cPanel.

Якщо спробувати визначити, які опції повинні бути доступні при виборі Ruby ​​on rails хостинг для проектів, то, на мою думку, слід виокремити наступні:

– Надійність (передбачає стабільну і швидку роботу веб-сервера, а також техпідтримку 24/7);

– Підтримка Ruby on rails;

– Можливість роботи з командним рядком (підтримка можливості використання SSH);

– Попередньо встановлена можливість роботи з GIT;

– Можливість створення, зупинки і перезапуску проектів через панель управління (якщо робимо проект для клієнтів). 

Для початку роботи відкриваємо нашу панель управління cPanel і гортаємо вниз до розділу «Програмне забезпечення»

Для роботи з Ruby ​​вам необхідно перейти на сторінку Setup Ruby app, де ви побачите вікно Setup new application з такими опціями: 

Ruby version – в даному селекторі ви можете вибрати версію Ruby, яка необхідна для вашого додатка. У нашому прикладі вибираємо версію 2.6.

App Directory – коренева директорія вашого додатка. Шлях до кореневої директорії буде генеруватися з блоку /home/user_name/ (де user_name – ім’я користувача, яке генерується при створенні облікового запису і використовується як логін в cPanel) і назви директорії, де буде розміщено додаток. У нашому прикладі – повний шлях до кореневої директорії нашого додатка (де вам потрібно буде розмістити файли самого додатка) – /home/user_name/app/.

App Domain/URI – тут ви вибираєте ім’я домену (якщо у вас їх декілька), за яким буде відкриватися веб-доступ до вашого додатка. 

Setup – кнопка для створення і установки базового набору функцій Ruby-додатка, включаючи налаштування віртуального оточення.

Вводимо потрібні вам значення, потім тиснемо кнопку Setup. Після успішного створення додатка воно з’явитися у списку нижче:

App Directory – коренева директорія вашого додатка відносно кореневої директорії користувача (в нашому прикладі – app (повний шлях – /home/user_name/app/)). При натисканні на Edit ви можете змінити кореневу директорію вашого додатка, що не рекомендується в умовах, коли програма вже налаштована і працює.

App URI – ім’я домену, за яким буде відкриватися веб-доступ до вашого додатка. При натисканні на Edit ви можете змінити ім’я домену для додатка, що не рекомендується в умовах, коли програма вже налаштована і працює.

Ruby version – в даному селекторі ви можете вибрати версію Ruby, яка необхідна для вашого додатка.

modules – після натискання на show ви можете побачити весь список встановлених модулів у віртуальному оточенні цього додатка і за необхідності встановлювати нові модулі.

Execute command – виконати пряму команду у віртуальній оболонці вашого додатка.

Command for entering to virtual environment – команда, за допомогою якої ви можете виконати вхід у віртуальне оточення вашого додатка з командного рядка, доступ до якого можна отримати через SSH. У нашому прикладі – команда має наступний вигляд:

# source /home/user_name/rubyvenv/app/2.6/bin/activate

Кнопки:

Update – оновлення програми. Наприклад, після установки або видалення модулів.

Reset – скидання налаштувань/модулів проекту до базових.

Restart – перезапуск додатка.

Remove – видалити додаток.

Наприклад, через це вікно можна довстановлювати модулі в якості gem-файлів. Наприклад, для установки модуля haml:

Прописуємо в рядок haml – система згенерує для вас схожі модулі і подасть їх за збігами у випадному списку. Обираємо haml, після чого з’явиться вікно з вибором відповідної версії даного модуля, обираємо – 4.0.7.

Так само обов’язково обираємо і додаємо сам  bundle і bundler. За бажанням можна додати всі геми для вашого додатка. Після додавання все матиме наступний вигляд:

bundle rails cpanel

Якщо все встановлено коректно – при переході по вказаній в додатка App URI ви повинні побачити наступне:

It works!

Ruby 2.6.4

Віртуальна оболонка для роботи Ruby-додатка налаштована і працює.

Якщо у вас виникли питання, звертайтеся в нашу службу техпідтримки, і ми з радістю вам допоможемо!