Node.js   发布时间:2022-04-24  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了node.js – 我可以运行一个私有的npm存储库而不复制公共存储库?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
使用Node.js编写了许多代码段(内部使用),并希望将模块(为npm打包)存储在软件包存储库中,以用于将要安装的各种机器的每个分发。

理想情况下,我想要一个类似于Debian的apt存储库的解决方案,其中我可以运行一个私有存储库服务器,并配置npm使用一个存储库列表来安装(当安装“foo”时,如果“foo”服务器从那里安装它,否则从公共服务器安装它)。

但是,它看起来像npm注册表配置键只接受单个URL。

有办法实现我想要的吗?

我最近找到的是:

>在本地镜像公共存储库,并在其顶部添加我的包…但我不想保留在AWS上复制的这些数据量(2.5G并且仍在下载)。
>将所有我的软件包托管在git仓库@R_696_10183@安装(这是一个麻烦)。
>在http上托管静态包(据我所知,这将阻止我自动获得“最新版本”。我想我可以做一些符号链接,但是仍然不如git灵活,需要完整的URL需要保持最新),并且不给出可搜索的存储库。

解决方法

我只是为我的工作设置。这是我做的:

>设置空NPM注册表:我按照从npmjs.org这个分支的指示,增加了大约improved documentation
>设置Kappa:我使用了Kappa一个伟大的npm代理从Paypal。 (我猜他们有一个非常类似的用例,大多数人谁想要一个私人存储库;这正是我想要的)。
>设置npm_lazy(可选):我想要一个漂亮的缓存的常用软件包,如果npmjs.org下来,所以我添加npm_lazy在整个事情,作为缓存层。

整个事情花了两天(ish)起床和跑步。另一方面,如果你担心人们意外推送到公共注册表,我建议将它添加你的package.json:

“publishConfig”:{“registry”:“http://my-registry.example.com”},

这真的只是一个偏执狂;一旦你设置你的npm指向你的Kappa / npm_lazy实例,Kappa处理你的私人存储库的发布。

注意:Kappa只会每次发布到它的配置中的第一个存储库。如果您需要发布到您的私人注册表和公共,您将需要制定自己的解决方案。

大佬总结

以上是大佬教程为你收集整理的node.js – 我可以运行一个私有的npm存储库而不复制公共存储库?全部内容,希望文章能够帮你解决node.js – 我可以运行一个私有的npm存储库而不复制公共存储库?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。