Ruby - 托管私有 gem

Posted

技术标签:

【中文标题】Ruby - 托管私有 gem【英文标题】:Ruby - hosting private gems 【发布时间】:2011-03-24 17:22:39 【问题描述】:

有没有什么地方可以存放私人红宝石? 所以我可以允许它通过使用公钥或类似的东西只被拉到特定的地方?

谢谢

【问题讨论】:

我正在寻找完全相同的东西。到目前为止,我只找到了如何运行自己的 gem 服务器(实际上并不难) 目前我已经求助于使用 CI 服务器来构建我的 gem 和所有使用这些 gem 的应用程序,然后 CI 服务器通过出售 gem,因此不需要公开访问 为那个布拉德干杯,我会试着跟着你,顺便说一句,什么是 CI 服务器? 持续集成——签入源代码。CI 构建应用程序及其依赖项。 【参考方案1】:

如果您更喜欢云解决方案,请查看Gemfury。

免责声明:我在做这个

【讨论】:

它看起来又漂亮又简单,正是我所需要的。【参考方案2】:

您有几个选择...

宝石服务器

在您要从中分发它的任何服务器上安装 gem。然后在机器上运行gem server。这将启动一个任何人都可以查询的小型 gem 服务器。然后只需将新的 gem 源添加到客户端计算机。 gem sources -a <server>

优点:设置极其简单。可以在任何端口上启动。 缺点:不提供基于密钥的身份验证。

GITOSIS

设置一个 gitosis 服务器并将 gem 源代码存储在那里。然后只需从 repo 中提取并在需要更新它时构建 gem。是的,构建和安装 gem 需要额外的几个步骤,但是您将获得基于密钥的身份验证以提高安全性。

优点:提供基于密钥的身份验证 缺点:每次更新都必须拉取源代码,构建,然后安装 gem。您还必须实际设置 gitosis 服务器。

GITHUB

与 gitosis 完全相同,但您必须付费才能将其设为私有。如果您负担得起,则无需进行任何设置。

优点:提供基于密钥的身份验证 缺点:每次更新都必须拉取源代码,构建,然后安装 gem。花费一点钱。

很遗憾,主要的 gem 服务都不能完全满足您的需求。 Github 停止构建 gem,RubyGems 不提供任何私有 gem 托管。希望上述工具之一对您来说足够好。就我个人而言,我会选择 gem 服务器选项,然后通过 IP 或其他一些访问限制锁定机器。我知道它并不完美,但它可以工作并且设置快速/容易。

【讨论】:

【参考方案3】:

查看Gem in a Box。

【讨论】:

+1 表示geminabox。顺便看看我的geminabox docker 镜像。它帮助我在一分钟内部署geminabox 服务器。

以上是关于Ruby - 托管私有 gem的主要内容,如果未能解决你的问题,请参考以下文章

使用 Apache 托管 Ruby gem

是否存在 ruby​​ rack 应用程序的托管? [关闭]

如何使用 setup.py 安装托管在私有 PyPI 中的包?

私有,json文件托管[关闭]

无法使用托管在 GPR 上的私有 NPM 包

无法从 ec2 实例访问我的路由 53 私有托管区域