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

Вступление

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

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

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

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

Предпосылки

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

  • Один сервер Ubuntu 16.04 с пользователем non-root.

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

Обновление и установка зависимостей

Во-первых, мы должны обновить + apt-get +, так как мы впервые используем + apt + в этом сеансе. Это обеспечит обновление локального кэша пакетов.

sudo apt-get update

Далее давайте установим зависимости, необходимые для rbenv и Ruby, с помощью + apt-get:

sudo apt-get install autoconf bison build-essential libssl-dev libyaml-dev libreadline6-dev zlib1g-dev libncurses5-dev libffi-dev libgdbm3 libgdbm-dev

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

Установить rbenv

Теперь мы готовы к установке rbenv. Давайте клонируем репозиторий rbenv из git. Вы должны выполнить эти шаги из учетной записи пользователя, из которой вы планируете запускать Ruby.

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

Отсюда вы должны добавить + ~ / .rbenv / bin к вашему` + $ PATH`, чтобы вы могли использовать утилиту командной строки rbenv. Также добавление + ~ / .rbenv / bin / rbenv init + в ваш файл + ~ / .basrc + позволит вам автоматически загрузить rbenv.

echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(rbenv init -)"' >> ~/.bashrc

Затем введите rbenv, набрав:

source ~/.bashrc

Вы можете проверить, правильно ли настроен rbenv, с помощью команды + type +, которая покажет больше информации о rbenv:

type rbenv

Ваше окно терминала должно вывести следующее:

Outputrbenv 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 install +, которая упрощает процесс установки для новых версий Ruby, вы должны установить ruby-build, который мы установим как плагин для rbenv через git:

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

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

Установите Ruby

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

rbenv install -l

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

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

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

rbenv install
rbenv global

Если вы хотите установить и использовать другую версию, просто запустите команды + rbenv + с другим номером версии, как в + rbenv install + и + rbenv global +.

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

ruby -v

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

Outputruby 2.5.0p0 (2017-12-25 revision 61468) [x86_64-linux]

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

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

Gems - это пакеты, расширяющие функциональность Ruby. Мы хотим установить Rails с помощью команды + gem +.

Чтобы процесс установки Rails был менее продолжительным, мы отключим локальную документацию для каждого устанавливаемого нами гема. Мы также установим гем компоновщика для управления зависимостями приложений:

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

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

gem env home

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

/home//.rbenv/versions//lib/ruby/gems/

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

Установите Rails

Как и тот же пользователь, вы можете установить самую последнюю версию Rails с помощью команды + gem install +:

gem install rails

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

gem search '^rails$' --all
gem install rails -v

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

rbenv rehash

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

rails -v

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

OutputRails 5.1.5

На этом этапе вы можете начать тестирование установки Ruby on Rails и приступить к разработке веб-приложений.

Обновление rbenv

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

cd ~/.rbenv
git pull

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

Удаление версий Ruby

Когда вы загружаете больше версий Ruby, вы можете накапливать больше версий, чем вам хотелось бы, в вашем каталоге + ~ / .rbenv / version +.

Используйте плагин ruby-build для автоматизации процесса удаления с помощью подкоманды + uninstall +. Например, напечатав это, вы удалите версию Ruby:

rbenv uninstall

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

Заключение

Мы рассмотрели основы того, как установить rbenv и Ruby on Rails, чтобы вы могли использовать несколько сред Ruby. Следующие шаги помогут вам узнать, как сделать эти среды более устойчивыми. Для большей масштабируемости, централизации и контроля в вашем приложении Ruby on Rails вы можете использовать его с https://www.digitalocean.com/community/tutorials/how-to-use-postgresql-with-your-ruby- on-rails-application-on-ubuntu-14-04 [PostgreSQL] или https://www.digitalocean.com/community/tutorials/how-to-use-mysql-with-your-ruby-on-rails-application -on-ubuntu-14-04 [MySQL], а не база данных sqlite3 по умолчанию. По мере роста ваших потребностей вы также можете узнать, как https://www.digitalocean.com/community/tutorials/how-to-scale-ruby-on-rails-applications-across-multiple-droplets-part-1[scale. Приложения Ruby on Rails на нескольких серверах.

Related