Nexus oss 3 yarn 登录问题 - 私有 npm 存储库

Mih*_*man 2 nexus npm yarnpkg

我已经设置了 nexus oss 3,它看起来很酷。由于 --pure-lockfile 选项,我所有的项目都是使用 yarn 安装的。

重现问题的步骤:
1. 使用私有 npm 注册表设置 nexus oss 3(如文档中所述)
2. 禁用来自 nexus oss 3 管理面板的匿名访问
3. 在带有 alpine 的 linux 服务器上尝试 yarn install --pure-lockfile (你必须有一个包托管在 package.json 中的私有 repo 上)
4. 不起作用,返回 401 错误

我尝试了一切,但我无法让纱线登录以获取这些包。

如果我使用 npm install,它可以工作。

有人可以告诉我如何使用上面的设置使纱线在 nexus oss3 中工作吗?

Saa*_*ran 5

如果npm install工作正常,那么您必须正确定义登录凭据和存储库。

  1. 打开终端并运行npm login,输入您的 nexus 帐户的用户名和密码。这将创建一个文件~/.npmrc。打开这个文件nano ~/.npmrc,输出看起来像

//<repository>:_authToken=NpmToken.<token>

一个虚拟示例:

//test.server.com/repository/npm-group/:_authToken=NpmToken.123456-12345-12345-tok-en0onum

  1. 转到项目目录cd <project_dir>,创建一个新文件.yarnrc,打开它nano .yarnrc。插入以下行,保存并退出(Ctrl+ OCtrl+ X)。

registry "<repository>"

  1. .npmrc在同一目录中创建另一个文件<project_dir>。打开,添加以下行,保存并退出。

registry=<repository> always-auth=true //<repository>:_authToken=NpmToken.<token>

  1. 删除.npmrcat home 目录rm ~/.npmrc

  2. 现在您可以node_modules使用yarn或下载yarn install