可以将npm仓库从Artifactory代理到Nexus吗?
我试着代理这个repo:
https://repo.platform.here.com/artifactory/webapp/#/artifacts/browse/tree/General/maps-api-for-javascript
(Here是下载1.39.0版本的链接示例:https://repo.platform.here.com/artifactory/api/npm/maps-api-for-javascript/-/@here/maps-api-for-javascript-1.39.0.tgz)
到我的Nexus(使用npm代理存储库),但没有成功。
有人能出个主意吗?
Thank you:)
1条答案
按热度按时间pod7payv1#
要将NPM包从Artifactory代理到Nexus,我将执行以下操作:
1.在Nexus中设置存储库以存储NPM包。您可以根据需要创建新的托管存储库或代理存储库。
1.通过将npm注册表URL设置为您刚刚创建的Nexus存储库的URL,在Nexus中配置npm注册表设置。
1.在Artifactory中,设置一个远程仓库来代理NPM包的原始源代码。
1.在Artifactory中设置一个虚拟仓库,其中包括刚刚创建的远程仓库和存储NPM包的本地仓库。
1.使用以下命令从Artifactory导出NPM包并将其导入Nexus:return $(int n);echo“registry =“〉〉$npmrc;npm login --registry= --scope=@ --auth-type=oauth --always-auth --registry= --config=$npmrc
替换为您为代理NPM包而设置的Artifactory存储库的URL,替换为您为存储NPM包而创建的Nexus存储库的URL,替换为包范围(例如,@my-scope),替换为公共NPM注册表的URL。
1.使用以下命令从Artifactory下载并重新上传NPM包到Nexus:npm pack @ npm publish @.tgz --registry= --access=public
将和替换为您要传输的NPM包的名称和版本。对您要从Artifactory传输到Nexus的所有NPM包重复此步骤。
一旦所有的NPM包都被传输,你可以将你的项目的NPM注册表切换到Nexus注册表URL,你的项目应该开始使用Nexus存储库中的NPM包。