Поиск по сайту:

Как установить Ruby on Rails с помощью rbenv на Ubuntu 18.04


Введение

Ruby on Rails — один из самых популярных стеков приложений для разработчиков, которые хотят создавать сайты и веб-приложения. Язык программирования Ruby в сочетании со средой разработки Rails упрощает разработку приложений.

Вы можете легко установить Ruby и Rails с помощью инструмента командной строки rbenv. Использование rbenv предоставит вам надежную среду для разработки ваших приложений Ruby on Rails, поскольку это позволит вам легко переключать версии Ruby, сохраняя всю вашу команду на одной и той же версии.

rbenv обеспечивает поддержку указания версий Ruby для конкретных приложений, позволяет изменять глобальный Ruby для каждого пользователя и позволяет использовать переменную среды для переопределения версии Ruby.

Это руководство проведет вас через процесс установки Ruby и Rails через rbenv.

Предпосылки

Чтобы следовать этому руководству, вам нужно:

  • Один сервер Ubuntu 18.04, настроенный в соответствии с руководством по первоначальной настройке сервера Ubuntu 18.04, включая пользователя без полномочий root и брандмауэр.
  • Node.js установлен с использованием официального PPA, как описано в разделе Установка Node.js в Ubuntu 18.04. Некоторые функции Rails, такие как Asset Pipeline, зависят от среды выполнения JavaScript. Node.js предоставляет эту функцию.

Шаг 1 — Установите rbenv и зависимости

Ruby использует несколько пакетов, которые вы можете установить через менеджер пакетов. После их установки вы можете установить rbenv и использовать его для установки Ruby.

Сначала обновите список пакетов:

  1. sudo apt update

Затем установите зависимости, необходимые для установки Ruby:

  1. sudo apt install autoconf bison build-essential libssl-dev libyaml-dev libreadline6-dev zlib1g-dev libncurses5-dev libffi-dev libgdbm5 libgdbm-dev

После загрузки зависимостей вы можете установить сам rbenv. Клонируйте репозиторий rbenv с GitHub в каталог ~/.rbenv:

  1. git clone https://github.com/rbenv/rbenv.git ~/.rbenv

Затем добавьте ~/.rbenv/bin в свой PATH, чтобы вы могли использовать утилиту командной строки rbenv. Сделайте это, изменив файл ~/.bashrc, чтобы он повлиял на будущие сеансы входа:

  1. echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc

Затем добавьте команду eval $ (rbenv init -) в ваш файл ~/.bashrc, чтобы rbenv загружался автоматически:

  1. echo 'eval "$(rbenv init -)"' >> ~/.bashrc

Затем примените изменения, внесенные в файл ~/.bashrc, к текущему сеансу оболочки:

  1. source ~/.bashrc

Убедитесь, что rbenv настроен правильно, с помощью команды type, которая отобразит дополнительную информацию о команде rbenv:

  1. type rbenv

В окне вашего терминала отобразится следующее:

Output
rbenv is a function rbenv () { local command; command="${1:-}"; if [ "$#" -gt 0 ]; then shift; fi; case "$command" in rehash | shell) eval "$(rbenv "sh-$command" "$@")" ;; *) command rbenv "$command" "$@" ;; esac }

Затем установите плагин [ruby-build] (https://github.com/rbenv/ruby-build). Этот подключаемый модуль добавляет команду rbenv install, упрощающую процесс установки новых версий Ruby:

  1. git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build

На данный момент у вас установлены и rbenv, и ruby-build. Давайте установим Ruby дальше.

Шаг 2 — Установка Ruby с помощью ruby-build

Теперь, когда установлен плагин ruby-build, вы можете установить версии Ruby, которые могут вам понадобиться, с помощью простой команды. Во-первых, давайте перечислим все доступные версии Ruby:

  1. rbenv install -l

Результатом этой команды должен быть длинный список версий, которые вы можете выбрать для установки.

Давайте установим Ruby 2.5.1:

  1. rbenv install 2.5.1

Установка Ruby может занять много времени, поэтому будьте готовы к тому, что установка займет некоторое время.

После завершения установки установите его в качестве версии Ruby по умолчанию с помощью подкоманды global:

  1. rbenv global 2.5.1

Убедитесь, что Ruby был правильно установлен, проверив номер его версии:

  1. ruby -v

Если вы установили версию 2.5.1 Ruby, вывод приведенной выше команды должен выглядеть примерно так:

Output
ruby 2.5.1p57 (2018-03-29 revision 63029) [x86_64-linux]

Чтобы установить и использовать другую версию Ruby, запустите команды rbenv с другим номером версии, как в rbenv install 2.3.0 и rbenv global 2.3.0.

Теперь у вас установлена хотя бы одна версия Ruby, и вы установили версию Ruby по умолчанию. Далее мы настроим гемы и Rails.

Шаг 3 – Работа с драгоценными камнями

Gems — это способ распространения библиотек Ruby. Вы используете команду gem для управления этими драгоценными камнями. Мы будем использовать эту команду для установки Rails.

Когда вы устанавливаете гем, в процессе установки создается локальная документация. Это может значительно увеличить время процесса установки каждого гема, поэтому отключите генерацию локальной документации, создав файл с именем ~/.gemrc, который содержит параметр конфигурации для отключения этой функции:

  1. echo "gem: --no-document" > ~/.gemrc

Bundler — это инструмент, который управляет зависимостями гемов для проектов. Затем установите гем Bundler. поскольку Rails зависит от этого.

  1. gem install bundler

Вы увидите такой вывод:

Output
Fetching: bundler-1.16.2.gem (100%) Successfully installed bundler-1.16.2 1 gem installed

Вы можете использовать команду gem env (подкоманда env является сокращением от environment), чтобы узнать больше об окружении и настройке драгоценных камней. Вы можете увидеть, где устанавливаются драгоценные камни, используя аргумент home, например:

  1. gem env home

Вы увидите вывод, похожий на этот:

/home/sammy/.rbenv/versions/2.5.1/lib/ruby/gems/2.5.0

После того, как вы настроили драгоценные камни, вы можете установить Rails.

Шаг 4 – Установка рельсов

Чтобы установить Rails, используйте команду gem install вместе с флагом -v, чтобы указать версию. В этом уроке мы будем использовать версию 5.2.0:

  1. gem install rails -v 5.2.0

Команда gem устанавливает указанный вами gem, а также все зависимости. Rails представляет собой сложную среду веб-разработки и имеет множество зависимостей, поэтому процесс займет некоторое время. В конце концов вы увидите сообщение о том, что Rails установлен вместе с его зависимостями:

Output
... Successfully installed rails-5.2.0 38 gems installed

Примечание. Если вы хотите установить другую версию Rails, вы можете перечислить допустимые версии Rails, выполнив поиск, который выведет длинный список возможных версий. Затем мы можем установить конкретную версию, например 4.2.7:

  1. gem search '^rails$' --all
  2. gem install rails -v 4.2.7

Если вы хотите установить последнюю версию Rails, запустите команду без указания версии:

  1. gem install rails

rbenv работает, создавая каталог прокладок, которые указывают на файлы, используемые текущей версией Ruby. С помощью подкоманды rehash rbenv поддерживает прокладки в этом каталоге для соответствия каждой команде Ruby во всех установленных версиях Ruby на вашем сервере. Всякий раз, когда вы устанавливаете новую версию Ruby или гем, который предоставляет команды, как это делает Rails, вы должны запустить:

  1. rbenv rehash

Убедитесь, что Rails установлен правильно, распечатав его версию с помощью этой команды:

  1. rails -v

Если он установлен правильно, вы увидите установленную версию Rails:

Output
Rails 5.2.0

На этом этапе вы можете приступить к тестированию установки Ruby on Rails и приступить к разработке веб-приложений. Давайте посмотрим, как поддерживать rbenv в актуальном состоянии.

Шаг 5 – Обновление rbenv

Поскольку вы установили rbenv вручную с помощью Git, вы можете обновить свою установку до самой последней версии в любое время с помощью команды git pull в каталоге ~/.rbenv:

  1. cd ~/.rbenv
  2. git pull

Это гарантирует, что мы используем самую последнюю доступную версию rbenv.

Шаг 6 — Удаление версий Ruby

Когда вы загружаете дополнительные версии Ruby, вы можете накапливать больше версий, чем вам хотелось бы, в каталоге ~/.rbenv/versions. Используйте подкоманду ruby-build plugin’s’ uninstall, чтобы удалить эти предыдущие версии.

Например, если ввести это, будет удалена версия Ruby 2.1.3:

  1. rbenv uninstall 2.1.3

С помощью команды rbenv uninstall вы можете очистить старые версии Ruby, чтобы у вас не было установлено больше, чем вы используете в настоящее время.

Шаг 7 – Удаление rbenv

Если вы решили, что больше не хотите использовать rbenv, вы можете удалить его из своей системы.

Для этого сначала откройте файл ~/.bashrc в редакторе:

  1. nano ~/.bashrc

Найдите и удалите следующие две строки из файла:

...
export PATH="$HOME/.rbenv/bin:$PATH"
eval "$(rbenv init -)"

Сохраните файл и выйдите из редактора.

Затем удалите rbenv и все установленные версии Ruby с помощью этой команды:

 rm -rf `rbenv root`

Выйдите из системы и снова войдите, чтобы применить изменения к вашей оболочке.

Заключение

В этом руководстве вы установили rbenv и Ruby on Rails. Отсюда вы можете узнать больше о том, как сделать эти среды более надежными.

Узнайте, как использовать Ruby on Rails для масштабирования приложений Ruby on Rails на нескольких серверах.