Homeland 国内访问 rubygems.org 好慢啊,大家有没有提速的方法?

vincent · December 01, 2011 · Last by cactis replied at April 21, 2012 · 6769 hits

经常一个 bundle install 要大半天才能完成,有时甚至直接 timeout 抛异常,天朝的 Rubyist 命苦啊,大家没有好的方法加快 gem 的检查和安装啊?

有没有谁弄有 rubygems mirror 或者 有国内的代理缓存的啊?

正在搞,很快就能上线了

#1 楼 @huacnlee 哈哈,非常期待

有代理的话,可以用 proxychains

#1 楼 @huacnlee hi,你说的,就是我们今天早上弄的那台吗?

#4 楼 @zhuangbiaowei 是的,不过现在还有一步需要做

$ gem generate_index /path/to/gemmirrors/

这步需要搞很久

用 ssh 穿过去,然后 export http_proxy=http://127.0.0.1:xxxxx/

ruby 遵守 unix 环境变量的 不要了直接设置一个 unset http_proxy 就好了

如果你 production 直接一台机器翻墙,共享给其他机器就好了

我经常直接 rubygems.org 把需要的 gem wget 下来,然后本地安装

#9 楼 @wxianfeng 嗯,这是一种解决方法, 不过不得已的情况下不想使用,因为这比直接 bundle install 麻烦多了。

@vincent @huacnlee

看来大家与我原来有一样的困惑。 不过真的要感谢淘宝给了我们一个延迟 30 分钟的镜像。

设置方法请参考 http://ruby.taobao.org/

把所需 gems 放在 vendor/cache 下面,就不用每次下载了。当然还得连 source。

bundle package 可以把当前项目的 gem 保存到 vendor/cache。

不错的注意

bundle package 浪费版本库空间,等你项目搞久了以后你知道了,git clone 一个新环境超级费时,尤其是在 Github 上面的时候

@huacnlee 原来淘宝的那个镜像就是你们搞得呀,孤陋寡闻了。 能不能 ruby 版本更新的时候也及时镜像啊,貌似 1.9.3-p125 出来很久了。 最好 jruby 也放出来哈。是不是贪心了:)。amazon 的服务器实在让人纠结。

创建项目时可以先敲过 bundle rails new testpro --skip-bundle 如果 bundle 都下载过了就可以直接 bundle --local

ruby.taobao.org

You need to Sign in before reply, if you don't have an account, please Sign up first.