В каждой настройке, описывающей настройку среды с помощью rbenv и Bundler, всегда необходимо установить пакет как системный жемчуг, используя gem install bundler
. Часто они также рекомендуют rbenv-bundler rbenv plugin, но the maintainers of rbenv discourage this.Нужно ли устанавливать Rails как системный жемчуг?
Что не описано, как установить Rails. Инициализация нового проекта Rails создает базовый Gemfile для bundler. Однако для инициализации проекта Rails необходимо установить Rails. Кажется странным и даже неправильным сделать каталог, написать базовый Gemfile, который включает Rails, запустить bundle install
, а затем инициализировать Rails в текущем каталоге. На самом деле, я сомневаюсь, что это будет даже хорошо работать, если оно вообще работает.
Итак, нужно ли устанавливать Rails в качестве системного драгоценного камня с gem install rails
? Если да, то как управлять несколькими версиями Rails, в частности с rbenv?
Это имеет смысл. Это немного повторяющаяся работа - создание каталога, создание Gemfile, а затем продувка этого Gemfile. Это еще несколько команд. Но это позволяет всем, кроме Bundler, жить в каталоге поставщика (или как бы вы его называете). –
На самом деле это действительно плохая идея установить его как системный Gem, возможно, если вы не используете настраиваемый экземпляр докера. Это хорошая идея для разделения системных и пользовательских библиотек. Приложение для рельсов в основном предназначено для пользователей с точки зрения ОС. Так что rbenv для пользователя развертывания лучше. – Tilo
Вот почему в примере я устанавливаю драгоценные камни в папку поставщика внутри приложения. Лично я также использую Foreman/Heroku Local для управления другими службами (Database, Redis и т. Д.), Чтобы изолировать их от приложения. –