作者热门文章
- xml - AJAX/Jquery XML 解析
- 具有多重继承的 XML 模式
- .net - 枚举序列化 Json 与 XML
- XML 简单类型、简单内容、复杂类型、复杂内容
我想为工作中的某些服务器(没有互联网访问权限)构建一个可访问的 rubygems 镜像,所以我开始像每个人似乎做的那样:
$ cat gemmirror.config
---
- from: http://gems.rubyforge.org
to: /data/rubygems/mirror
$ gem mirror --config-file=gemmirror.config
镜像开始正常同步。好的。但是等等,它会下载 http://gems.rubyforge.org 的全部内容!我的意思是每个 gem 的所有现有版本。哇。几个小时后,我仍在下载以字母“L”开头的 gem ...
更不用说镜像将要占用的磁盘空间了。
现在我的问题是:有没有办法设置一个“迷你”rubygems 服务器,比如 CPAN::Mini 允许 Perl:这样的镜像将只包含每个 gems 的最新版本。我猜这在 99.9% 的情况下都是人们想要的(至少这对我来说已经足够好了)。
我在谷歌上搜索了很多,很遗憾,我找不到任何相关的引用。
如果有人能指出我这样做的方法,我将不胜感激。
谢谢!
最佳答案
这并不是您真正要求的,但也许解决此问题的一种方法是设置一个缓存 http 代理,该代理将在请求时缓存 gem,如果后续请求命中缓存。
类似于 squid应该完成这项工作。
然后每个客户端配置gem proxy使用 squid,所以所有的 gem 下载都通过它,希望 99% 的时间都在缓存中......
虽然如果你使用 bundler ,似乎是 has issues with the proxy settings :(
关于ruby - 有没有办法设置最小的 rubygems 镜像(只有最新版本),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4726413/
我是一名优秀的程序员,十分优秀!