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

Введение

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

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

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

В этом руководстве вы будете использовать rbenv для установки и настройки Ruby on Rails на вашей локальной машине macOS.

Предварительные требования

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

Шаг 1 — Установка rbenv

На этом этапе вы установите rbenv и убедитесь, что он запускается автоматически при загрузке. Для этого на macOS в этом руководстве будет использоваться менеджер пакетов Homebrew.

Чтобы загрузить пакет rbenv с помощью Homebrew, выполните следующую команду:

  1. brew install rbenv

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

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

  1. nano .bash_profile

Добавьте следующую строку в файл:

~/.bash_profile
eval "$(rbenv init -)"

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

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

  1. source ~/.bash_profile

Чтобы убедиться, что 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 }

На данный момент у вас установлены и rbenv, и ruby-build на вашем компьютере. Это позволит вам установить Ruby из командной строки на следующем этапе.

Шаг 2 — Установка Ruby

С установленным плагином ruby-build теперь вы можете установить любую версию Ruby, которая вам может понадобиться, через одну команду. На этом этапе вы выберете версию Ruby, установите ее на свой компьютер, а затем проверите установку.

Сначала используйте флаг -l, чтобы перечислить доступные версии Ruby. Обратите внимание, что неперечисленные недавние минорные версии также могут быть доступны. Например, если вывод этой команды перечисляет Ruby 3.0.5, вы скорее всего сможете также установить 3.0.4.

  1. rbenv install -l
Output
2.6.10 2.7.6 3.0.4 3.1.2 jruby-9.3.6.0 mruby-3.1.0 picoruby-3.0.0 rbx-5.0 truffleruby-22.1.0 truffleruby+graalvm-22.1.0

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

В этом руководстве мы установим Ruby 3.1.2:

  1. rbenv install 3.1.2

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

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

  1. rbenv global 3.1.2

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

  1. ruby -v

Ваш результат будет выглядеть примерно так:

Output
ruby 3.1.2p20 (2022-04-12 revision 4491bb740a) [x86_64-darwin21]

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

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

Шаг 3 — Работа с Gems

Gems – это пакеты библиотек и программ Ruby, которые могут быть распространены по всей экосистеме Ruby. Вы используете команду gem для управления этими gems. На этом этапе вы настроите команду gem для подготовки к установке Rails.

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

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

После этого используйте команду gem для установки Bundler, инструмента, управляющего зависимостями гемов для проектов. Это необходимо для правильной работы Rails:

  1. gem install bundler

Вы увидите вывод подобный следующему:

Output
Fetching: bundler-2.3.18.gem Successfully installed bundler-2.3.18 1 gem installed

Можно использовать команду gem env, чтобы узнать больше о среде и конфигурации гемов. Для просмотра местоположения установленных гемов используйте аргумент home, например, так:

  1. gem env home

Вы увидите вывод, аналогичный следующему:

/Users/sammy/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0

Теперь, когда вы настроили и исследовали рабочий процесс с гемами, вы свободно можете установить Rails.

Шаг 4 — Установка Rails

Чтобы установить Rails, используйте команду gem install:

  1. gem install rails

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

Output
... Successfully installed rails-7.0.3.1 35 gems installed

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

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

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

Для обновления каталога shims выполните следующую команду:

  1. rbenv rehash

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

  1. rails -v

Вы увидите установленную версию Rails:

Output
Rails 7.0.3.1

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

Шаг 5 — Обновление и удаление rbenv и Ruby

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

Вы можете обновить rbenv и ruby-build, используя Homebrew, запустив следующую команду:

  1. brew upgrade rbenv ruby-build

Если требуется обновить rbenv или ruby-build, Homebrew сделает это автоматически. Если ваша настройка уже обновлена, вы получите вывод, аналогичный следующему:

Output
Warning: rbenv 1.2.0 already installed Warning: ruby-build 20220713 already installed

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

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

Например, выполните следующее, чтобы удалить Ruby версии 2.1.3:

  1. rbenv uninstall 2.1.3

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

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

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

  1. nano ~/.bash_profile

Найдите и удалите следующую строку из файла, чтобы rbenv не запускался при открытии Терминала:

~/.bash_profile
...
eval "$(rbenv init -)"

После удаления этой строки сохраните файл и закройте редактор.

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

  1. source ~/.bash_profile

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

  1. rm -rf `rbenv root`

Наконец, удалите пакет rbenv с помощью Homebrew:

  1. brew uninstall rbenv

Проверьте версию rbenv, чтобы убедиться, что он был удален:

  1. rbenv -v

Вы получите следующий вывод:

Output
-bash: /usr/local/bin/rbenv: No such file or directory

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

Заключение

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

Source:
https://www.digitalocean.com/community/tutorials/how-to-install-ruby-on-rails-with-rbenv-on-macos