我尝试通过Nexus代理 node-sass 和其他npm库,但在 node-sass 的安装后步骤尝试时遇到问题从github中提取文件https://github.com/sass/node-sass/releases/download/v3.10.1/linux-x64-48_binding.node。我在公司防火墙后面,所以我唯一的选择就是让Nexus代理我需要的所有文件。
是否有可能以某种方式将此单个文件添加到Nexus,以便它能够代理并在请求发送到https://github.com/sass/node-sass/releases/download/v3.10.1/linux-x64-48_binding.node时将其传递?
答案 0 :(得分:8)
经过一番挖掘后,我能想到的最佳解决方案是:
您可以使用--sass-binary-site参数或环境变量(或.npmrc中的值,lol)来覆盖它们为这些软件包伸出的位置,您可以在内部克隆repo,以便您全部拥有它们:https://github.com/sass/node-sass-binaries
有关这方面的更多信息可用于以下两个问题:
此外,Sonatype的友好人员在这里提供了大量有关此内容的信息(下方):https://support.sonatype.com/hc/en-us/articles/213465048-Why-does-npm-client-need-access-to-URLs-other-than-my-private-registry-
答案 1 :(得分:0)
我正在Nexus上使用RAW托管的存储库,并将此行添加到我的npmrc文件中:sass-binary-site=https://url-to-private.nexus/repository/raw-repository-name/node-sass
注意:我正在上传到该原始存储库,例如到文件夹/node-sass/v4.11.0/
还没有找到只代理整个GitHub存储库的解决方案。