我可以將寶石源重定向到我的web服務器路徑,我將在其中下載所有必需的gem軟件包並放到那裏。我想使用「bundle install
」從本地資源安裝gem bundle
GemFile會從http://rubygems.org中取出那些,因爲它是在那裏定義的。 我通常會遇到「太多請求」的錯誤(似乎是互聯網擁塞問題)。
是否有可能將gem源路徑重定向到本地服務器?
我可以將寶石源重定向到我的web服務器路徑,我將在其中下載所有必需的gem軟件包並放到那裏。我想使用「bundle install
」從本地資源安裝gem bundle
GemFile會從http://rubygems.org中取出那些,因爲它是在那裏定義的。 我通常會遇到「太多請求」的錯誤(似乎是互聯網擁塞問題)。
是否有可能將gem源路徑重定向到本地服務器?
您是否嘗試在Gemfile中聲明額外的Rubygems源代碼?
source "http://youserver.com"
TL; DR:使用:path
option。
假設你想從不可達資源上安裝一個寶石,如:
# Gemfile
gem 'rails_admin', :git => 'git://github.com/sferik/rails_admin.git'
,你無法安裝使用bundle install
因爲防火牆什麼的寶石。
按照下列步驟操作:
下載文件(使用使用任何方法就可以了,如HTTP_PROXY,從https://github.com/sferik/rails_admin/zipball/master)
把下載的文件放到一個文件夾,如vendor/gems/rails_admin
和在它的文件應該是這樣的:
$ ls vendor/gems/rails_admin
app config Gemfile Gemfile31 lib LICENSE.md rails_admin.gemspec Rakefile README.md screenshots spec
現在讓我們修改的Gemfile:
gem 'rails_admin', :path => "vendor/gems/rails_admin"
運行bundle
,工作!
你可以從here更詳細做bundle install --local