Ruby on Rails (RoR) — это платформа для веб-приложений с открытым исходным кодом, опубликованная под лицензией MIT. Она является серверным веб-приложением и следует концепции MVC (Model-View-Controller). Rails предоставляет заготовки для создания баз данных, веб-служб и веб-страниц. Более 3000 разработчиков внесли свой вклад в разработку среды Rails. Существует множество известных веб-приложений созданных на основе Rails, таких как Github, Airbnb, Soundcloud и т. д.
В этой статье я покажу, как установить Ruby on Rails на Ubuntu 18.04 LTS. Также вы узнаете, как настроить Rails с базой данных PostgreSQL, и как создать первый проект Rails.
Установка ruby on rails на Ubuntu 18.04
Шаг 1. Установка Ruby Version Manager
RVM (Ruby Version Manager) — это инструмент командной строки, основанный на Bash и Ruby и предназначенный для управления установкой ruby. RVM позволяет устанавливать и настраивать несколько версий ruby в одной системе.
Сначала установим пакеты rvm, используя скрипт установщика. Добавим ключ rvm в систему:
gpg –keyserver hkp://keys.gnupg.net –recv-keys 409B6B1796C275462A1703113804BB82D39DC0E37D2BAF1CF37B13E2069D6956105BD0E739499BDB
Установите стабильную версию rvm, выполните команду ниже:
curl -sSL https://get.rvm.io | bash -s stable –ruby
Команда автоматически установит необходимые пакеты и инсталлирует последнюю стабильную версию rvm. После завершения установки выполните следующую команду:
Теперь мы можно использовать команду rvm для управления версией ruby:
Шаг 2. Установка Ruby последней версии
Последней версией ruby на данный момент считается Ruby 2.5.1, и она будет автоматически установлена во время инсталляции rvm, если в системе нет пакета ruby. Далее мы настроим версию ruby в операционной системе Ubuntu. Обновите rvm до последней стабильной версии.
rvm get stable –autolibs=enable
usermod -a -G rvm root
Теперь проверим все доступные версии ruby:
Мы получим много доступных версий ruby и установим последнюю стабильную версию Ruby с помощью команды rvm, как показано ниже.
rvm install ruby-2.5.1
После завершения установки сделайте ruby 2.5.1 версией по умолчанию:
rvm –default use ruby-2.5.1
Можете проверить версию ruby:
Теперь версия 2.5.1 используется по умолчанию.
Шаг 3 – Установка Nodejs
Ruby on Rails требует времени для компиляции конвейера ресурсов Rails на JavaScript. Для разработчиков на Rails в Ubuntu Linux лучше всего установить и использовать Nodejs в качестве среды выполнения Javascript. Добавим репозиторий nodejs Node в систему.
curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash –
После этого установите последнюю версию nodejs 10 и дополнительные пакеты, используя команду apt.
sudo apt install -y nodejs
sudo apt install gcc g++ make
Шаг 4 – Настройка Ruby Gem
RubyGems – менеджер пакетов Ruby, поставляемый в виде инструмента командной строки gem. Он автоматически устанавливается при установке Ruby в системе. Обновим gem до последней версии и проверим его:
gem update –system
gem -v
Замечание: Можно отключить установку документации по каждому пакету ruby. Просто выполните:
echo “gem: –no-document” >>
Шаг 5. Установка Ruby on Rails
В этом руководстве мы будем использовать последнюю стабильную версию Ruby on Rails 5.2.0. Установите Rails Ubuntu с помощью менеджера пакетов gem ruby командой:
gem install rails -v 5.2.0
После завершения установки можете проверить версию rails.
Шаг 6. Настройка PostgreSQL для Rails
По умолчанию Ruby on Rails использует базу данных SQLite. Кроме этого он поддерживает множество систем баз данных, включая MySQL, SQLite и PostgreSQL. Мы будем использовать PostgreSQL. Установите базу данных PostgreSQL, используя команду apt:
sudo apt install postgresql postgresql-contrib libpq-dev -y
После завершения установки запустите службу Postgres и разрешите ей каждый раз запускаться при загрузке системы:
systemctl start postgresql
systemctl enable postgresql
Далее настройте пароль для пользователя postgres и создайте пользователя для установки Rails. Для этого войдите в систему от имени пользователя ‘postgres’ и запустите оболочку postgres:
su – postgres
psql
Для изменения пароля postgres выполните:
Теперь создайте нового пользователя для установки rails, например, с именем rails_dev, с привилегией создания базы данных и паролем «aqwe123». Для этого выполните такой запрос:
create role rails_dev with createdb login password ‘aqwe123’;
Теперь проверим все доступные роли в системе.
Вы увидите пользователя rails_dev в списке.
На этом установка и настройка PostgreSQL для Rails Development завершена.
Шаг 7. Первое приложение Rails
Ruby on Rails имеет команду rails, предназначенную для настройки вашего приложения. Создадим новый проект myapp с базой данных по умолчанию PostgreSQL, выполнив команду rails, как показано ниже.
rails new myapp -d postgresql
После выполнения команды появится каталог «myapp», перейдите в этот каталог и отредактируйте файл конфигурации базы данных database.yml с помощью редактора vim.
cd myapp/
vim config/database.yml
В этом файле есть такие разделы: development, testing и production. В разделе development раскомментируйте строки указанные ниже и измените их значение на данные, которые вы использовали для создания пользователя postgresql.
username: rails_dev
password: aqwe123
host: localhost
port 5423
Для раздела testing сделайте аналогичную операцию. Сохраните изменения и закройте редактор. Теперь создайте базу данных и убедитесь что нет ошибок:
rails db:setup
rails db:migrate
Когда все настройки завершены, запустите веб-сервер puma rails, используя приведенную ниже команду:
rails s -b 192.168.1.10 -p 8080
Первый проект rails будет запущен на IP-адресе «192.168.1.10» с портом 8080.
Откройте веб-браузер и введите IP-адрес сервера в адресной строке:
Вы получите домашнюю страницу проекта rails по умолчанию, как показано ниже.
Далее создадим простое CRUD приложение с базой данных PostgreSQL на Rails. Выполните такие команды:
rails g scaffold Post title:string body:text
rake db:migrate
И снова запустите сервер puma:
rails s -b 192.168.1.10 -p 8080
А потом откройте такой адрес в браузере:
Мы получили простую форму CRUD:
На этом установка Ruby on Rails на Ubuntu 18.04 с базой данных Postgresql успешно завершена.
Нет похожих записей
alt=”Creative Commons License” width=”” />
Статья распространяется под лицензией Creative Commons ShareAlike 4.0 при копировании материала ссылка на источник обязательна.