我们正在评估 Nexus 与 Artifactory 作为工件存储解决方案。他们可以很好地缓存远程 Maven 存储库。它们中的任何一个都可以缓存 RPM 包和 NPM 模块吗?
5 回答
对私有本地 NPM 注册表的支持刚刚在 3.2.0 版中添加到 Artifactory http://www.jfrog.com/confluence/display/RTF/Npm+Repositories
虽然它们都支持 rpm 包的托管 yum 存储库,但我认为它们都不支持代理其他存储库。
然而,这是我以前见过的 Nexus 的功能请求。Nexus 上的 Yum 存储库可以包裹在 Maven 存储库中,因此您可以拥有一个带有 rpm 包代理的 Maven 存储库,然后作为 yum 存储库公开。
NPM 是非常不同的包格式(使用内部数据库),并且已被 Nexus 用户请求。您甚至可以通过 Nexus 插件的形式自己实现对它的支持。YUM 对 Nexus 的支持最初是作为社区贡献创建的。
更新:自 2.10 发布以来,NPM 支持作为 Nexus Open Source 和 Professional 的一部分提供。有关它的博客文章中提供了更多详细信息,并且还提供了文档。
Nexus(2.10 及更高版本)可以代理 NPM:
http://books.sonatype.com/nexus-book/2.10/reference/npm.html
但是,第 2、3 级依赖项存在一个问题,忽略“注册表”配置设置,并继续从https://registry.npmjs.org的默认注册表下载。这是 NPM 的问题,而不是 Nexus 的问题。
Artifactory 拥有一流的 RPM 支持。NPM在管道中。
随着最新版本 3.5.3 artifactory pro 现在正式支持 YUM 远程存储库(刚刚尝试过)。
请注意,您只能镜像/代理完整的存储库:排除/包含以及虚拟存储库不起作用,因为不会重新计算远程存储库的元数据。