有没有办法设置一个最小的rubygems镜像(只有最后版本)

suk*_*ria 9 ruby rubygems mirror

我想为工作中的某些服务器构建一个rubygems镜像(无法访问Internet),所以我开始像每个人似乎都这样做:

 $ cat gemmirror.config 
 ---
 - from: http://gems.rubyforge.org
 to: /data/rubygems/mirror

 $ gem mirror --config-file=gemmirror.config
Run Code Online (Sandbox Code Playgroud)

镜子开始同步很好.好.但是等等,它会下载http://gems.rubyforge.org的全部内容!我的意思是每个宝石的所有现有版本.哇.几个小时后,我仍在下载以字母"L"开头的宝石......

更不用说镜子要占用的磁盘空间了.

现在我的问题是:有没有办法设置一个"迷你"rubygems服务器,如CPAN :: Mini允许Perl:这样的镜像只包含每个宝石的最新版本.我想这是人们想要的99.9%的情况(至少对我来说这对我来说是非常好的).

我搜索了很多,遗憾的是,我找不到任何参考.

如果有人能指出我这样做的方式,我会非常感激.

谢谢!

Chr*_*ton 1

并不是你真正想要的,但也许解决这个问题的一种方法是设置一个缓存http代理,它将在请求时缓存gem,这应该后续请求会命中缓存。

像鱿鱼这样的东西应该可以完成这项工作。

然后每个客户端将gem代理配置为使用squid,因此所有gem下载都会经过它,并且希望99%的时间都在缓存中......

虽然如果您使用捆绑器,似乎代理设置有问题:(