nexus搭建私有化npm

发布于:2024-05-07 ⋅ 阅读:(19) ⋅ 点赞:(0)

背景:@ideacome/foundation 库版本控制不方便,没有统一管理机制,对于新人不友好。

私有npm优点

  • 代码复用性

  • 私有服务部署在公司内部更安全

  • 本地内网服务器下载比外网下载更快

  • 方便统一管理

方案: 通过Nexus搭建Npm私库(verdaccio,sinopia,cnpm)

  • Nexus: 可以同时处理 maven npm 等私有仓库,偏向后台使用。

  • cnpm:需要配置 数据库,配置比较麻烦

  • sinopia: github 项目没有维护

  • verdaccio: sinopia 的分支配置简单,node 启动,提供 docker 版本。单纯搭建npm 私服,比较推荐

步骤:

1 ,

2,配置远程npm源

2.1 首先打开我们安装好的Nexus地址,点击Signin进行登录

image.png

2.2 进入管理页面

image.png

image.png

2.3 创建常用的代理源,添加代理

image.png

将源(

npmjs:

taobao:

2.4 创建npm-localbuild ,用于发布个人开发的npm组件。

localbuild:

image.png

2.5 创建npm-group ,用于把几个仓库组组合在一起公开连接使用

将设置的代理源和本地源添加到group

image.png

image.png

3.说明

3.1 默认仓库说明

  • npm-proxy:可以代理npmjs和淘宝镜像
  • npm-hosted:用于上传、自定义和个人开发的npm组件
  • npm-public:仓库分组,把几个仓库组组合在一起使用。

3.2 仓库类型

  • Group:这是一个仓库聚合的概念,用户仓库地址选择Group的地址,即可访问Group中配置的,用于方便开发人员自己设定的仓库。

  • Hosted:私有仓库,内部项目的发布仓库,专门用来存储我们自己生成的文件

  • Proxy:代理类型,从远程中央仓库中寻找数据的仓库(可以点击对应的仓库的Configuration页签下Remote Storage属性的值即被代理的远程仓库的路径)

4 发布私有仓库

image.png

复制出来在本地运行以下命令,修改npm仓库源:

npm config set registry 

推荐使用nrm管理源:npm install -g nrm

添加源:nrm add xxx 

查看源列表:nrm ls

image.png

切换源:nrm use XYLX

image.png

  • 添加用户:

1,添加登录验证:

npm adduser  --registry=

2,添加本地仓库校验:

npm adduser  --registry=

1,2两步根据提示输入账号,密码和邮箱

  • 仓库发布:

image.png

方式一: npm publish --registry = 

方式二:

1.package.json添加registry:

image.png

2.发布:npm publish

版本控制

建议未正式发布之前用alpha区分,正式发布正常更新版本,举个栗子:

测试版:version: x.x.x-alpha

正式版:

  • 更新功能修改版本号第二位:0.x.0

  • 项目在进行了重大修改或局部修正累积较多:x.0.0

目前包版本:

image.png

包对应项目tag:

image.png

注意:如果出现下面错误:

image.png

删除.npmrc文件重新添加用户