如何搭建一个rubygems镜像服务器? [英] How to build a rubygems mirror server?

查看:11
本文介绍了如何搭建一个rubygems镜像服务器?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我的工作场所禁止我们访问互联网,因此我们无法连接到 ruby​​gems.org 远程安装 gems.

My workplace has banned us from internet access so we can't connect to rubygems.org to install gems remotely.

我可以在家访问 ruby​​gems.org.有没有一种简单的方法可以让我在家下载和更新我们需要的 gem,然后将它们(通过便携式硬盘或其他东西)同步到我工作场所的本地 gem 镜像服务器,以便其他同事可以从该镜像服务器安装 gem?

I can access rubygems.org at home. Is there a simple way to enable me download and update the gems we need at home ,then sync them(by a portable hard disk or somthing) to a local gems mirror server at my workplace so that other colleagues can install gems from that mirror server?

推荐答案

你可以使用rubygems-mirror 镜像 gem 并 Gem in a box 托管它们.

You can use rubygems-mirror to mirror the gems and Gem in a box to host them.

安装 ruby​​gems-mirror:

$ gem install rubygems-mirror

编辑~/.gem/.mirrorrc:

---
- from: http://rubygems.org
  to: ~/.gem/mirror

创建镜像目录:

$ mkdir ~/.gem/mirror

开始镜像:

$ gem mirror

镜像完成后编辑~/.gem/mirror/config.ru:

require "rubygems"
require "geminabox"

Geminabox.data = "./"
run Geminabox

在盒子中安装 Gem:

$ gem install geminabox

启动 gem 服务器:

$ cd ~/.gem/mirror
$ rackup

编辑您的应用程序的 Gemfile 以使用您的 gem 服务器:

Edit your application's Gemfile to use your gem server:

source "http://your.servers.ip:9292"
.

或者将其添加为 ruby​​gems.org 的本地 镜像,所以您不必更改您的 Gemfile:

Or add it as a local mirror for rubygems.org, so you don't have to change your Gemfile:

$ bundle config mirror.https://rubygems.org https://localgems.lan
$ bundle config mirror.http://rubygems.org http://localgems.lan

不时重新索引您的镜像:

$ gem generate_index --directory ~/.gem/mirror

这篇关于如何搭建一个rubygems镜像服务器?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆