npm - 如何在 Sonatyoe Nexus OSS 中使用带有私有(private) npm 注册表的 yarn ?

标签 npm nexus yarnpkg

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

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

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

如果我使用 npm install,它会起作用。

谁能告诉我如何使用上面的设置让 yarn 工作在 nexus oss3 上?

最佳答案

如果 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+O, Ctrl+X)。

registry "<repository>"

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

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

  1. 删除主目录 .npmrc 中的 rm ~/.npmrc

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

关于npm - 如何在 Sonatyoe Nexus OSS 中使用带有私有(private) npm 注册表的 yarn ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43849946/

相关文章:

npm - 如何使用 npm 定位 git #branch@version?

node.js - 运行 npm 脚本命令时覆盖 package.json 键

maven - 如何轻松交换 Maven 设置配置文件?

maven - 如何使MVN部署提示输入密码?

node.js - Yarn install workspace 中单个包的生产依赖

node.js - 在 Windows 中找不到本地安装的模块

node.js - 使用 npm 安装 express-generator 时出错

maven - 如何在 Gradle 中将包装设置为 pom 而不是默认为 jar

ruby-on-rails - 使用rails webpacker时我们应该将manifest.json文件提交到git repo吗?

node.js - 无法使用 create-react-app 生成项目