我已经设置了 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 中工作吗?
如果npm install工作正常,那么您必须正确定义登录凭据和存储库。
npm login,输入您的 nexus 帐户的用户名和密码。这将创建一个文件~/.npmrc。打开这个文件nano ~/.npmrc,输出看起来像//<repository>:_authToken=NpmToken.<token>
一个虚拟示例:
//test.server.com/repository/npm-group/:_authToken=NpmToken.123456-12345-12345-tok-en0onum
cd <project_dir>,创建一个新文件.yarnrc,打开它nano .yarnrc。插入以下行,保存并退出(Ctrl+ O,Ctrl+ X)。registry "<repository>"
.npmrc在同一目录中创建另一个文件<project_dir>。打开,添加以下行,保存并退出。registry=<repository>
always-auth=true
//<repository>:_authToken=NpmToken.<token>
删除.npmrcat home 目录rm ~/.npmrc。
现在您可以node_modules使用yarn或下载yarn install。