Ruby on Rails – один из самых популярных стеков для создания сайтов и веб-приложений на Ruby. Язык программирования Ruby в сочетании с фреймворком Rails позволяет быстро создавать и развертывать масштабируемые приложения.
Установить Ruby и Rails можно с помощью инструмента командной строки rbenv. Использование rbenv обеспечивает надежную среду для разработки приложений Ruby on Rails и позволяет переключаться между версиями Ruby, чтобы вся команда работала на одной версии. Rbenv также обеспечивает поддержку указания версий Ruby для конкретных приложений, позволяет изменять глобальную версию Ruby для каждого пользователя, а также использовать переменную окружения для переопределения версии Ruby.
В этой статье мы рассмотрим, как установить Ruby и Ruby on Rails на Ubuntu с помощью rbenv и gem. Сначала мы установим пакеты, необходимые для установки rbenv, а затем Ruby. После этого мы установим плагин ruby-build, чтобы иметь возможность устанавливать доступные версии Ruby. И наконец, с помощью gem установим Rails. Также мы рассмотрим, как проверить, актуальна ли версия rbenv, и как удалить отдельные версии Ruby и rbenv.
Установка rbenv и зависимостей
Для установки Ruby на Linux требуется ряд пакетов, которые можно установить с помощью стандартного пакетного менеджера. После их установки можно будет установить rbenv и Ruby.
Установить необходимые пакеты можно с помощью следующих команд:
sudo apt update
sudo apt install git curl libssl-dev libreadline-dev zlib1g-dev autoconf bison build-essential libyaml-dev libreadline-dev libncurses5-dev libffi-dev libgdbm-devПосле установки зависимостей можно приступить к установке rbenv. Используем curl, чтобы скачать скрипт-установщик rbenv с Github, и запустим его с помощью bash:
curl -fsSL https://github.com/rbenv/rbenv-installer/raw/HEAD/bin/rbenv-installer | bashПосле завершения установки выполните следующую команду:
~/.rbenv/bin/rbenv init
# Please add the following line to your `~/.bashrc' file,
# then restart your terminal.
eval "$(/root/.rbenv/bin/rbenv init - bash)"В результате выполнения команды вы увидите команду вида eval "....", которую необходимо добавить в .bashrc, чтобы rbenv инициализировался при каждом подключении к серверу.
Сделать это можно следующей командой:
echo '<сюда_подставьте_команду_из_предыдущего_вывода>' >> ~/.bashrcПример: echo 'eval "$(/root/.rbenv/bin/rbenv init - bash)"’ >> ~/.bashrc
Применим внесенные изменения в файл ~/.bashrc к текущей сессии:
source ~/.bashrcИ в конце убедимся, что rbenv установлен корректно, с помощью команды type – она отобразит информацию о команде rbenv:
type rbenvВывод команды type:
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
}Мы установили rbenv и ruby-build, теперь перейдем к установке среды разработки Ruby.
Установка Ruby с помощью ruby-build
С установленным плагином ruby-build можно установить любую версию Ruby одной командой. Для начала посмотрим список доступных версий Ruby:
rbenv install -lВывод этой команды покажет список стабильных версий Ruby, доступных для установки:
3.0.6
3.1.4
3.2.2
3.3.0
jruby-9.4.5.0
mruby-3.2.0
picoruby-3.0.0
truffleruby-23.1.1
truffleruby+graalvm-23.1.1
Only latest stable releases for each Ruby implementation are shown.
Use `rbenv install --list-all' to show all local versions.Установим последнюю на данный момент доступную версию Ruby – 3.3.0:
rbenv install 3.3.0Установка Ruby на Ubuntu может быть весьма продолжительной, поэтому будьте готовы к тому, что она займет длительное время.
После завершения установки Ruby сделаем версию 3.3.0 стандартной с помощью команды rbenv global:
rbenv global 3.2.0Убедимся, что Ruby установился нормально, проверив его версию:
ruby -vЕсли вы устанавливали версию 3.3.0, то вывод будет следующим:
ruby 3.3.0 (2023-12-25 revision 5124f9ac75) [x86_64-linux]Теперь у нас одна версия Ruby, которая установлена стандартной для системы. Перейдем к работе с гемами и установке Rails.
Работа с гемами (Gems)
Гемы (Gems) – это способ распространения библиотек Ruby. Для управления гемами используется команда gem и мы используем ее для установки Rails.
Когда вы устанавливаете гем, генерируется локальная документация. Это добавляет значительное количество времени к процессу установки каждого гема, поэтому мы отключим генерацию локальной документации, создав файл ~/.gemrc, который содержит параметр конфигурации для отключения этой функции:
echo "gem: --no-document" > ~/.gemrcBundler – это инструмент управления зависимостями гемов для проектов. Установим гем Bundler, так как он необходим для работы Rails:
gem install bundlerВ результате установки вы получите следующий вывод:
Fetching bundler-2.5.4.gem
Successfully installed bundler-2.5.4
1 gem installedВы можете использовать команду gem env, чтобы узнать больше об окружении и конфигурации гемов. Например, вы можете проверить, куда устанавливаются гемы, указав в качестве аргумента home:
gem env homeВ результате вы получите вывод, похожий на следующий:
/root/.rbenv/versions/3.3.0/lib/ruby/gems/3.3.0После установки Bundler перейдем к установке Rails.
Установка Rails
Для установки Rails воспользуемся командой gem install с флагом -v, чтобы установить конкретную версию. В данном случае мы установим последнюю доступную на момент написания статьи версию – 7.1.2:
gem install rails -v 7.1.2Команда gem install устанавливает указанный гем, а также все его зависимости. Rails – сложный фреймворк для веб-разработки и имеет множество зависимостей, поэтому процесс установки займет некоторое время. В конце установки вы получите сообщение о том, что Rails установлен вместе со всеми его зависимостями:
…
Successfully installed rails-7.1.2
38 gems installedgem search '^rails$' --allЕсли вы хотите установить последнюю версию Rails, используйте команду gem install без флага -v:
gem install railsRbenv создает каталог shims, который указывает на файлы, которые использует установленная версия Ruby, активированная в данный момент. С помощью команды rbenv rehash необходимо актуализировать shims после установки Rails. Это необходимо делать каждый раз, когда вы устанавливаете новую версию Ruby или гем, который содержит команды для командной строки, как в случае с Rails:
rbenv rehashПроверим установку Rails, выведя его версию:
rails -vЕсли Rails установлен корректно, то вывод будет следующим:
Rails 7.1.2Процесс установки Ruby и Rails завершен и можно приступать к работе с Ruby on Rails.
Обновление rbenv
Во время установки rbenv используется Git, который клонирует репозиторий rbenv локально в директорию ~/.rbenv. Для обновления rbenv достаточно использовать команду git pull в директории ~/.rbenv:
cd ~/.rbenv
git pullУдаление версий Ruby
Плагин ruby-build содержит команду uninstall, с помощью которой можно удалить определенную версию Ruby:
rbenv uninstall 3.3.0С помощью этой команды вы можете удалять старые версии Ruby при обновлении.
Удаление rbenv
Если вам больше не нужен rbenv, то вы можете удалить его из системы.
Для этого откройте файл ~/.bashrc любым удобным редактором и удалите следующие строки:
…
eval "$(/root/.rbenv/bin/rbenv init - bash)"
…Затем удалите rbenv и все установленные версии Ruby следующей командой:
rm -rf `rbenv root`Заключение
В этой статье мы рассмотрели установку rbenv, Ruby и гемов для установки фреймворка Ruby on Rails. Теперь вы можете приступить к созданию своих сайтов и веб-приложений.
Надеемся, наше руководство по установке Ruby и Ruby on Rails с помощью rbenv было вам полезно.
Желаем удачной работы с Ruby и Ruby on Rails!
Если возникнут вопросы, напишите нам, пожалуйста, тикет из панели управления аккаунта (раздел “Помощь и поддержка”), а если вы захотите обсудить эту статью или наши продукты с коллегами по цеху и сотрудниками Бегета – ждем вас в нашем сообществе в Telegram.