[nexus]基于nexus搭建npm仓库及上传插件到仓库

环境信息

  • nexus: 3.29.2-02
  • node: v14.18.2
  • npm: 6.14.15

搭建npm仓库

创建存储位置

这一步不是必须的,可以跟之前创建的复用

依次打开 [设置] -> [ Blob Stores] -> [Create blob store] 填入name并确认 [Create blob store](path默认会自动填充,可根据需要进行修改)
在这里插入图片描述

创建proxy仓库

依次打开 [设置] -> [ Repositories] -> [Create repository] -> 选择 [npm(proxy)]类型 打开新增页面, 填入name、url并选择**[blob store](可以选择上一步中创建的) ,点击[Create repository]** 确认即可
在这里插入图片描述

创建hosted仓库

依次打开 [设置] -> [ Repositories] -> [Create repository] -> 选择 [npm(hosted)]类型 打开新增页面, 填入name、选择**[blob store](可以选择上上一步中创建的存储位置) ,点击[Create repository]** 确认即可

在这里插入图片描述

创建group仓库

依次打开 [设置] -> [ Repositories] -> [Create repository] -> 选择 [npm(group)]类型 打开新增页面, 填入name、选择 [blob store] (可以选择上上上一步中创建的存储位置) ,从可用列表中选中上一步添加的proxy\hosted类型的仓库,并点击 [>] 添加到右侧,然后点击 [Create repository] 确认即可
在这里插入图片描述

配置域

这一步配置主要为了在使用时认证使用,如不配置将报如下错误

npm ERR! code E401
npm ERR! Unable to authenticate, need: BASIC realm="Sonatype Nexus Repository Manager"

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\**\AppData\Roaming\npm-cache\_logs\2023-06-27T14_30_31_628Z-debug.log

依次打开 [设置] -> [ Security] -> [Realms ],从可用列表中选中 [npm Bearer Token Realm] ,并点击 [>] 添加到右侧,然后点击 [Save] 确认即可
在这里插入图片描述

下载及上传

登录

如允许了匿名访问可忽略
使用如下依次设置私服地址及登录

#设置私服地址 (私服地址可从仓库列表中获得)
npm config set registry http://192.168.1.11:8081/repository/npm-public/
#登录私服
npm login --registry http://192.168.1.11:8081/repository/npm-public/

获取私服地址
在这里插入图片描述
登录过程
在这里插入图片描述

下载

以 安装verdaccio为例
执行如下命令

# 安装插件
npm install verdaccio --save

安装过程
在这里插入图片描述
安装完毕后public 仓库内容发生变化
在这里插入图片描述

上传

shellsubstitute插件源码为例
shellsubstitute源码下载地址: https://github.com/featurist/shellsubstitute/archive/refs/heads/master.zip
下载依赖包时使用的group类型的仓库,按其内顺序依次查找,当上传时须上传到hosted类型仓库,虽然两个仓库ip、端口一致,但仍需要进行登录操作

依次执行如下命令

#git拉取代码(直接下载包也行)
git clone  https://gh.api.99988866.xyz/https://github.com/featurist/shellsubstitute.git
#版本迭代
npm version patch
# 登录到hosted类型的仓库
npm login --registry http://192.168.1.11:8081/repository/npm-local/
# 发布到hosted类型的仓库
npm publish --registry http://192.168.1.11:8081/repository/npm-local/
# 

上传效果
在这里插入图片描述
上传后hosted仓库
在这里插入图片描述

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值