Как установить Ruby On Rails в Linux
В этом пошаговом руководстве представлено краткое введение в Ruby on Rails, а затем описаны шаги по установке Ruby on Rails в операционных системах Linux. В конце вы узнаете, как создать новое приложение Rails и протестировать его через веб-браузер.
Введение в Ruby on Rails
Ruby on Rails или Rails — это среда разработки веб-приложений с открытым исходным кодом, написанная на языке программирования Ruby. Rails — это серверная среда веб-приложений, которая упрощает использование веб-стандартов, таких как JSON
или XML
для передачи данных, а также HTML
, >CSS
и JavaScript
для пользовательского интерфейса.
Используя Rails, мы можем создавать современные веб-приложения с меньшим количеством кода, достигая при этом большего, чем другие языки и платформы. Сотни тысяч приложений созданы с использованием Rails. Некоторые из популярных приложений — Basecamp, GitHub, HEY, Shopify, Airbnb, Twitch, SoundCloud, Hulu, Zendesk и многие другие.
Ruby on Rails создан Дэвидом Хайнемейером Ханссоном, датским программистом, автогонщиком и автором бестселлеров. Ханссон впервые выпустил Rails с открытым исходным кодом в июле 2004 года. Rails стал популярным, когда Apple объявила, что будет поставлять Ruby on Rails с Mac OS X v10.5.
1. Установите Ruby on Rails в Linux
Прежде всего, обновите свою систему Linux.
Если вы используете Debian и его производные, такие как Ubuntu, вы можете обновить свою систему с помощью apt
, как показано ниже:
sudo apt update
sudo apt upgrade
В Fedora RHEL и его клонах, таких как CentOS, AlmaLinux:
sudo dnf --refresh upgrade
Чтобы обновить openSUSE, запустите:
sudo zypper update
sudo zypper upgrade
Перезагрузите систему, чтобы применить и завершить обновления:
sudo reboot
Перед установкой Rails убедитесь, что у вас установлены следующие необходимые компоненты.
- Ruby – динамичный язык программирования с открытым исходным кодом, ориентированный на простоту и производительность.
- SQLite3 — это серверная часть базы данных по умолчанию для Rails. Он будет установлен как требование при установке Ruby.
- Node.js – кроссплатформенная среда выполнения JavaScript с открытым исходным кодом для создания масштабируемых сетевых приложений.
- Yarn — современный менеджер пакетов для установки программ JavaScript и управления ими.
1.1. Установите Ruby в Linux
Ruby упакован для многих дистрибутивов Linux и доступен в их репозиториях по умолчанию. Таким образом, вы можете установить его, используя менеджер пакетов вашего дистрибутива по умолчанию. Однако доступная версия Ruby в репозиториях может быть устаревшей. Таким образом, вы можете использовать любые сторонние установщики и менеджеры Ruby.
Многие пользователи Ruby используют менеджеры Ruby для управления несколькими Ruby. Они позволяют легко или даже автоматически переключаться между версиями Ruby. Для целей данного руководства мы будем использовать RVM.
RVM (расшифровывается как Ruby Version Manager) позволяет вам устанавливать и управлять несколькими установками Ruby в вашей системе Linux. Он также может управлять различными наборами драгоценных камней. Он доступен для macOS, Linux или других UNIX-подобных операционных систем.
Установите пакет GPG2, который необходим для добавления ключей GPG RVM:
sudo apt install gnupg2
А затем импортируйте ключи RVM GPG, введя следующую команду в свой терминал:
gpg2 --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB
После добавления ключа выполните следующую команду для установки RVM в Linux:
curl -sSL https://get.rvm.io | bash -s stable
Пример вывода:
Downloading https://github.com/rvm/rvm/archive/1.29.12.tar.gz
Downloading https://github.com/rvm/rvm/releases/download/1.29.12/1.29.12.tar.gz.asc
gpg: Signature made Fri Jan 15 18:46:22 2021 UTC
gpg: using RSA key 7D2BAF1CF37B13E2069D6956105BD0E739499BDB
gpg: Good signature from "Piotr Kuczynski <piotr.kuczynski@gmail.com>" [unknown]
gpg: WARNING: This key is not certified with a trusted signature!
gpg: There is no indication that the signature belongs to the owner.
Primary key fingerprint: 7D2B AF1C F37B 13E2 069D 6956 105B D0E7 3949 9BDB
GPG verified '/home/ostechnix/.rvm/archives/rvm-1.29.12.tgz'
Installing RVM to /home/ostechnix/.rvm/
Adding rvm PATH line to /home/ostechnix/.profile /home/ostechnix/.mkshrc /home/ostechnix/.bashrc /home/ostechnix/.zshrc.
Adding rvm loading line to /home/ostechnix/.profile /home/ostechnix/.bash_profile /home/ostechnix/.zlogin.
Installation of RVM in /home/ostechnix/.rvm/ is almost complete:
* To start using RVM you need to run `source /home/ostechnix/.rvm/scripts/rvm`
in all your open shell windows, in rare cases you need to reopen all shell windows.
Thanks for installing RVM ?
Please consider donating to our open collective to help us maintain RVM.
? Donate: https://opencollective.com/rvm/donate
Установите RVM в Linux
Установка RVM почти завершена. Перед установкой Ruby вам нужно выполнить последний шаг!
Как вы могли заметить в приведенном выше выводе, есть строка: Чтобы начать использовать RVM, вам нужно запустить `source /home/ostechnix/.rvm/scripts/rvm`
.
Итак, позвольте мне запустить следующую команду для запуска RVM:
source /home/ostechnix/.rvm/scripts/rvm
Замените /home/ostechnix
своим именем пользователя. Приведенная выше команда установит путь к среде RVM.
Если вы используете системы на базе RHEL (например, CentOS), вам может потребоваться выполнить следующую команду, чтобы добавить RVM в ` PATH
.
source /etc/profile.d/rvm.sh
Мы только что установили RVM и добавили его в ` PATH
. Теперь давайте установим необходимые требования для RVM.
Чтобы установить требования RVM, просто запустите:
rvm requirements
Пример вывода:
Checking requirements for ubuntu.
Installing requirements for ubuntu.
Updating system…
Installing required packages: g++, gcc, autoconf, automake, bison, libc6-dev, libffi-dev, libgdbm-dev, libncurses5-dev, libsqlite3-dev, libtool, libyaml-dev, make, pkg-config, sqlite3, zlib1g-dev, libgmp-dev, libreadline-dev, libssl-dev…………………………..
Requirements installation successful.
Приведенная выше команда устанавливает все необходимые пакеты, включая SQLite. Пришло время установить Ruby с помощью RVM.
Сначала давайте проверим, какая версия Ruby доступна, используя следующую команду:
rvm list known
Пример вывода:
MRI Rubies
[ruby-]1.8.6[-p420]
[ruby-]1.8.7[-head] # security released on head
[ruby-]1.9.1[-p431]
[ruby-]1.9.2[-p330]
[ruby-]1.9.3[-p551]
[ruby-]2.0.0[-p648]
[ruby-]2.1[.10]
[ruby-]2.2[.10]
[ruby-]2.3[.8]
[ruby-]2.4[.10]
[ruby-]2.5[.8]
[ruby-]2.6[.6]
[ruby-]2.7[.2]
[ruby-]3[.0.0]
ruby-head
[...]
На момент написания этого руководства последней доступной версией Ruby была 3.0.0.
Чтобы установить последнюю версию Ruby с помощью RVM в Linux, запустите:
rvm install ruby
Пример вывода:
Searching for binary rubies, this might take some time.
Found remote file https://rvm_io.global.ssl.fastly.net/binaries/ubuntu/20.04/x86_64/ruby-3.0.0.tar.bz2
Checking requirements for ubuntu.
Requirements installation successful.
ruby-3.0.0 - #configure
ruby-3.0.0 - #download
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 26.7M 100 26.7M 0 0 1186k 0 0:00:23 0:00:23 --:--:-- 1307k
ruby-3.0.0 - #validate archive
ruby-3.0.0 - #extract
ruby-3.0.0 - #validate binary
ruby-3.0.0 - #setup
ruby-3.0.0 - #gemset created /home/ostechnix/.rvm/gems/ruby-3.0.0@global
ruby-3.0.0 - #importing gemset /home/ostechnix/.rvm/gemsets/global.gems…………………………….
ruby-3.0.0 - #generating global wrappers……..
ruby-3.0.0 - #gemset created /home/ostechnix/.rvm/gems/ruby-3.0.0
ruby-3.0.0 - #importing gemsetfile /home/ostechnix/.rvm/gemsets/default.gems evaluated to empty gem list
ruby-3.0.0 - #generating default wrappers……..
Установите Ruby с помощью RVM в Linux
Вы также можете установить конкретную версию Ruby, явно указав ее версию. Например, следующая команда установит версию Ruby 2.7.2.
rvm install ruby-2.7.2
Проверьте установленную версию Ruby:
ruby --version
ruby 3.0.0p0 (2020-12-25 revision 95aff21468) [x86_64-linux]
Список всех установленных версий Ruby:
rvm list
Пример вывода:
=* ruby-3.0.0 [ x86_64 ]
=> - current
=* - current && default
* - default
Если вы установили несколько версий Ruby, вы можете установить версию Ruby по умолчанию, как показано ниже:
rvm use 3.0.0 --default
1.2. Установить SQLite
SQLite — это система управления реляционными базами данных, содержащаяся в библиотеке C. SQLite — наиболее широко распространенный движок базы данных. Он используется практически везде, включая веб-браузеры, операционные системы и встроенные системы. Rails использует SQLite3 в качестве базы данных по умолчанию.
SQLite устанавливается автоматически, когда мы устанавливаем требования RVM на предыдущем шаге. Так что давайте не будем заморачиваться с установкой SQLite.
1.3. Установить Нодейс
Некоторые функции Rails, такие как Asset Pipeline, зависят от среды выполнения JavaScript. Поскольку Nodejs предоставляет эту функцию, установите ее, как описано в следующей ссылке.
- Как установить NodeJS в Linux
1.4. Установить пряжу
Yarn — это менеджер пакетов JavaScript и более быстрая альтернатива NPM. Преимущество использования Yarn with Rails заключается в том, что вы облегчаете управление библиотеками CSS и JavaScript в своем проекте. Его поведение похоже на драгоценные камни Ruby, но во внешней вселенной. Rails поддерживает Yarn «из коробки».
Если вы еще не установили Yarn, обратитесь к следующему руководству.
- Как установить и использовать диспетчер пакетов Yarn в Linux
1,5. Установить рельсы
После установки всех вышеупомянутых компонентов выполните следующую команду, чтобы установить Ruby on Rails в вашей системе Linux:
gem install rails
Установите Ruby on Rails в Linux
Проверьте установленную версию Rails с помощью команды:
rails --version
Rails 6.1.3.2
Если вы хотите установить определенную версию Rails, например 5.2.0, команда будет такой:
gem install rails -v 5.2.0
Вы можете перечислить все доступные версии Rails, выполнив поиск их версий с помощью следующей команды:
gem search '^rails$' --all
На момент написания этого руководства доступны следующие удаленные драгоценные камни:
*** REMOTE GEMS ***
rails (6.1.3.2, 6.1.3.1, 6.1.3, 6.1.2.1, 6.1.2, 6.1.1, 6.1.0, 6.0.3.7, 6.0.3.6, 6.0.3.5, 6.0.3.4, 6.0.3.3, 6.0.3.2, 6.0.3.1, 6.0.3, 6.0.2.2, 6.0.2.1, 6.0.2, 6.0.1, 6.0.0, 5.2.6, 5.2.5, 5.2.4.6, 5.2.4.5, 5.2.4.4, 5.2.4.3, 5.2.4.2, 5.2.4.1, 5.2.4, 5.2.3, 5.2.2.1, 5.2.2, 5.2.1.1, 5.2.1, 5.2.0, 5.1.7, 5.1.6.2, 5.1.6.1, 5.1.6, 5.1.5, 5.1.4, 5.1.3, 5.1.2, 5.1.1, 5.1.0, 5.0.7.2, 5.0.7.1, 5.0.7, 5.0.6, 5.0.5, 5.0.4, 5.0.3, 5.0.2, 5.0.1, 5.0.0.1, 5.0.0, 4.2.11.3, 4.2.11.2, 4.2.11.1, 4.2.11, 4.2.10, 4.2.9, 4.2.8, 4.2.7.1, 4.2.7, 4.2.6, 4.2.5.2, 4.2.5.1, 4.2.5, 4.2.4, 4.2.3, 4.2.2, 4.2.1, 4.2.0, 4.1.16, 4.1.15, 4.1.14.2, 4.1.14.1, 4.1.14, 4.1.13, 4.1.12, 4.1.11, 4.1.10, 4.1.9, 4.1.8, 4.1.7.1, 4.1.7, 4.1.6, 4.1.5, 4.1.4, 4.1.3, 4.1.2, 4.1.1, 4.1.0, 4.0.13, 4.0.12, 4.0.11.1, 4.0.11, 4.0.10, 4.0.9, 4.0.8, 4.0.7, 4.0.6, 4.0.5, 4.0.4, 4.0.3, 4.0.2, 4.0.1, 4.0.0, 3.2.22.5, 3.2.22.4, 3.2.22.3, 3.2.22.2, 3.2.22.1, 3.2.22, 3.2.21, 3.2.20, 3.2.19, 3.2.18, 3.2.17, 3.2.16, 3.2.15, 3.2.14, 3.2.13, 3.2.12, 3.2.11, 3.2.10, 3.2.9, 3.2.8, 3.2.7, 3.2.6, 3.2.5, 3.2.4, 3.2.3, 3.2.2, 3.2.1, 3.2.0, 3.1.12, 3.1.11, 3.1.10, 3.1.9, 3.1.8, 3.1.7, 3.1.6, 3.1.5, 3.1.4, 3.1.3, 3.1.2, 3.1.1, 3.1.0, 3.0.20, 3.0.19, 3.0.18, 3.0.17, 3.0.16, 3.0.15, 3.0.14, 3.0.13, 3.0.12, 3.0.11, 3.0.10, 3.0.9, 3.0.8, 3.0.7, 3.0.6, 3.0.5, 3.0.4, 3.0.3, 3.0.2, 3.0.1, 3.0.0, 2.3.18, 2.3.17, 2.3.16, 2.3.15, 2.3.14, 2.3.12, 2.3.11, 2.3.10, 2.3.9, 2.3.8, 2.3.7, 2.3.6, 2.3.5, 2.3.4, 2.3.3, 2.3.2, 2.2.3, 2.2.2, 2.1.2, 2.1.1, 2.1.0, 2.0.5, 2.0.4, 2.0.2, 2.0.1, 2.0.0, 1.2.6, 1.2.5, 1.2.4, 1.2.3, 1.2.2, 1.2.1, 1.2.0, 1.1.6, 1.1.5, 1.1.4, 1.1.3, 1.1.2, 1.1.1, 1.1.0, 1.0.0, 0.14.4, 0.14.3, 0.14.2, 0.14.1, 0.13.1, 0.13.0, 0.12.1, 0.12.0, 0.11.1, 0.11.0, 0.10.1, 0.10.0, 0.9.5, 0.9.4.1, 0.9.4, 0.9.3, 0.9.2, 0.9.1, 0.9.0, 0.8.5, 0.8.0)
Самая последняя версия будет указана первой.
2. Создайте новое приложение Rails.
Rails состоит из множества скриптов, называемых генераторами, что упрощает разработку приложений! Одним из генераторов является генератор нового приложения, который используется для создания нового приложения Rails.
Чтобы создать новое приложение Rails с именем ostechnixapp
, запустите:
rails new ostechnixapp
Это создаст приложение Rails под названием ostechnixapp в каталоге с именем ostechnixapp
и установит зависимости gem, которые уже упомянуты в Gemfile
, с помощью bundle install
.
После создания приложения ostechnixapp
переключитесь в его каталог:
cd ostechnixapp/
Этот каталог содержит несколько файлов и подкаталогов. Главный подкаталог — app
, который содержит контроллеры, модели, представления, помощники, почтовые программы, каналы, задания и ресурсы для вашего приложения.
Чтобы увидеть наше недавно созданное приложение, давайте запустим веб-сервер с помощью команды:
bin/rails server
Или,
rails server
При этом запустится Puma, веб-сервер, по умолчанию распространяемый с помощью Rails.
Чтобы увидеть свое приложение в действии, откройте веб-браузер и перейдите по адресу http://localhost:3000. Вы должны увидеть информационную страницу Rails по умолчанию:
Информационная страница Rails по умолчанию
Если вы видите «Ура! Вы в Rails!» страница, поздравление! Все готово!! Ruby on Rails правильно установлен и настроен в вашей системе Linux. Чтобы выйти из веб-сервера, просто нажмите CTRL+C
.
По умолчанию вы можете получить доступ к тестовой странице Rails только с вашего локального компьютера. Если вы хотите получить доступ к тестовой странице Rails по умолчанию с другого компьютера в сети, запустите:
rails server -b 0.0.0.0
Теперь вы можете получить доступ к тестовой странице Rails из любой системы в сети, перейдя по адресу http://ip-address:3000
из окна браузера.
Вам также может потребоваться разрешить порт 3000
в брандмауэре/маршрутизаторе.
Вы также можете использовать другой порт, указав флаг -p вместе с номером порта, как показано ниже:
rails server -b 0.0.0.0 -p 8080
Теперь вы можете получить доступ к своему приложению Rails, используя этот URL-адрес: http://ip-address:8080
3. Используйте MySQL с приложением Rails
Хотя Sqlite прекрасно работает с Rails, иногда его может быть недостаточно для вашего приложения Rails. Если вам нужны масштабируемость, параллелизм, централизация и контроль, вы можете попробовать более надежные базы данных, такие как MySQL или PostgreSQL. В следующем руководстве объясняется, как использовать MySQL с приложением Ruby on Rails.
- Как использовать MySQL с приложением Ruby On Rails
4. Используйте PostgreSQL с приложением Rails
PostgreSQL — еще одна рекомендуемая база данных для использования с приложениями Rails. Если вы хотите использовать PostgreSQL вместо MySQL для своих проектов Rail, вам поможет следующее руководство.
- Как использовать PostgreSQL с приложением Ruby On Rails
5. Удалить РВМ
После установки Ruby вам, вероятно, не понадобится RVM. Таким образом, вы можете удалить RVM, если он вам больше не нужен.
Для этого отредактируйте файл ~/.bashrc
:
nano ~/.bashrc
Прокрутите вниз до конца и удалите следующие строки:
[...]
Add RVM to PATH for scripting. Make sure this is the last PATH variable chang>
export PATH="$PATH:$HOME/.rvm/bin"
Нажмите CTRL+W
, а затем CTRL+X
, чтобы сохранить и закрыть файл.
Создайте файл ~/.bashrc
, чтобы изменения немедленно вступили в силу.
source ~/.bashrc
Наконец, удалите каталог RVM:
rm -r ~/.rvm/
Заключение
На этом этапе вы должны узнать, что такое Ruby on Rails, как установить Ruby on Rails в Linux с помощью RVM и, наконец, как создать образец приложения Rails и протестировать его через веб-браузер. Начните разработку своих приложений Rails.
Ресурсы:
- Веб-сайт Ruby Version Manager
- Веб-сайт Ruby on Rails
- Репозиторий Ruby on Rails на GitHub
- Документация Ruby on Rails