JFrog私有注册表无法npm安装

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JFrog私有注册表无法npm安装相关的知识,希望对你有一定的参考价值。

我在JFrog NPM私有存储库中遇到问题。

在我们的配置项中,我们配置npm私有注册表,然后像这样执行npm install

- npm_private_registry https://DOMAIN.jfrog.io/DOMAIN/api/npm/npm-virtual/ $TOKEN
- npm install

[当我们使用node:12.13.1 Docker映像时,此代码工作得很好。

我们的问题是,将图像更改为较新的图像后,假设node:12.16.1,那么npm install命令就会失败。

然后我们收到以下错误:

$ npm install
(wd=/builds/DOMAIN/APP)
 npm WARN tar ENOENT: no such file or directory, open '/builds/DOMAIN/APP/node_modules/.staging/react-icons-921e2ffa/go/package.json'
 npm WARN tar ENOENT: no such file or directory, open '/builds/DOMAIN/APP/node_modules/.staging/intl-58a6f707/locale-data/jsonp/gsw-FR.js'
...
...
...
 npm ERR! Response timeout while trying to fetch https://DOMAIN.jfrog.io/DOMAIN/api/npm/npm-virtual/next (over 30000ms)

我们已经尝试了各种方法,但是目前还没有找到答案。有谁知道从哪里开始?这个问题似乎很普遍。如何在一个版本的node图像上获得超时而在另一个版本上没有问题?

谢谢!

答案

似乎此链接https://github.com/npm/cli/issues/1151提供了一些解释。通过npm-registry-fetch在npm 16.4.0中将超时硬编码为30000 ms。现在,它已恢复为不再超时https://github.com/npm/npm-registry-fetch/commit/fc5d94c39ca218d78df77249ab3a6bf1d9ed9db1。此修复程序位于npm https://github.com/npm/cli/releases/tag/v6.14.5的6.14.5中。

就具有节点版本的默认npm而言,这意味着版本12.16.2和12.16.3的节点通过npm 6.14.4包含此问题。

以上是关于JFrog私有注册表无法npm安装的主要内容,如果未能解决你的问题,请参考以下文章

从私有 gitlab 注册表安装多个 npm 包

package-lock.json 中的 npm "resolved"-fields 会随着 JFrog 工件不断变化

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

使用verdaccio 搭建私有npm 服务器

搭建私有Jfrog artifactory仓库并上传Android Library

搭建私有Jfrog artifactory仓库并上传Android Library