установка gem bundle с локального ресурса - PullRequest
8 голосов
/ 22 мая 2011

могу ли я перенаправить источник гемов на путь моего веб-сервера, где я скачаю все необходимые комплекты гемов и положу туда? Я хочу использовать их по "bundle install"

GemFile будет получать те из http://rubygems.org, как это определено там. Обычно я получаю сообщение об ошибке «слишком много запросов» (похоже, проблемы с перегрузкой в ​​Интернете).

возможно ли перенаправить исходный путь к моему локальному серверу?

Ответы [ 3 ]

17 голосов
/ 12 марта 2012

TL; DR: используйте параметр :path .


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

# Gemfile
gem 'rails_admin', :git => 'git://github.com/sferik/rails_admin.git'

и вы не можете установить гем, используя bundle install из-за брандмауэра или чего-то еще.

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

  1. Загрузите файл (используялюбой подход, например, используя http_proxy, из https://github.com/sferik/rails_admin/zipball/master)

  2. Поместите загруженный файл в папку, например vendor/gems/rails_admin, и файл в нем должен выглядеть следующим образом:

    $ ls vendor/gems/rails_admin
    app  config  Gemfile  Gemfile31  lib  LICENSE.md  rails_admin.gemspec  Rakefile  README.md  screenshots  spec
    
  3. Теперь давайте изменим ваш Gemfile:

    gem 'rails_admin', :path => "vendor/gems/rails_admin"  
    
  4. Запуск bundle, работает!

4 голосов
/ 30 ноября 2012

вы можете сделать bundle install --local

от здесь подробнее

0 голосов
/ 23 июня 2011

Вы пытались объявить дополнительный источник Rubygems в своем Gemfile, как это?

source "http://youserver.com"
...