gpt4 book ai didi

node.js - 在离线计算机上创建 NPM 注册表的副本?

转载 作者:行者123 更新时间:2023-12-01 20:21:59 33 4
gpt4 key购买 nike

所以我需要在独立网络上的独立盒子上进行一些新的 Web 开发。该独立网络无法访问互联网,但其上有相当多的计算机在 Windows Server 环境中运行。

我有一台可访问互联网的计算机,可以使用它下载 Node 并获取软件包,但我需要能够将软件包整体传输到独立计算机。

最好的方法是什么?我读过一些关于在本地计算机上复制注册表以便缓存它的文档,但是我如何获取该缓存并通过 USB 将其移植到这个独立网络?

还有其他方法可以处理这个问题吗?

之前在另一个项目中,我们使用 Verdaccio 建立了自己的私有(private) npm 存储库,并将我们自己的 npm 模块发布到该存储库。我可以轻松地进行设置,然后移植 Node 模块的 tar 或 zip 文件并以这种方式发布它们。但问题又来了,如何获得我需要的大量 Node 包?

我需要知道的主要事情是如何获取本地缓存的 npm 注册表,并在复制所有模块后将其设置在独立计算机上。我可以在互联网上完成所有这些操作,但是如何在服务器上传输和复制所有内容?

最佳答案

我也有同样的问题。

我安装并使用了 verdaccio 并解决了我的问题。

感谢 juan picado

您需要的是在存储文件夹中正确地缓存所有依赖项。

参见here how to find it

(例如在 Windows 8.1 中:C:\Users\xxx\AppData\Roaming\npm-cache)

您应该能够在缓存中看到所有已解析的依赖项。

然后在以下路径中设置名为:XDG_DATA_HOME环境变量:

  1. 右键单击“我的电脑”
  2. 点击“属性”。
  3. 在左侧面板中,点击高级系统设置
  4. Advance选项卡中单击Environmrnt变量...按钮。
  5. 在新打开的系统变量组中。单击新建按钮。
  6. 变量名称中输入XDG_DATA_HOME,在变量值中输入缓存路径。
  7. 点击确定按钮。

现在,转到 config.yaml 并在 packages 部分中注释 proxy。请按照以下步骤操作:

packages:
'@*/*':
access: $all
publish: $authenticated
# proxy: npmjs

'**':
access: $all
publish: $authenticated
# proxy: npmjs

更改注册表配置 URL。

npm config set registry http://localhost:4873/

最后,重新启动verdaccio。

希望有用。

关于node.js - 在离线计算机上创建 NPM 注册表的副本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52649655/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com