手把手教你如何配置私有npm库

日常工作中,我们除了用已有的npm包之外,有时候会开发自己的组件库或者方法库,但是公司自己的组件库一般不会将其暴露在公网上,因此我们需要使用公司内网搭建一个私有库。

使用工具:Sonatype Nexus Repository Manager

Nexus,就是联结,联系的意思。极大地简化了自己内部仓库的维护和外部仓库的访问。

这个工具已经告诉了我们仓库的设计思路,如下图所示,在新建npm仓库的时候,有三种类型可以选择:

  • hosted:本地存储,可以上传自己的项目到这里面;
  • proxy:提供代理其他仓库的类型,可以把官方源或者淘宝源代理过来;
  • group:组类型,它可以包含前面两个

所以我们的思路很明确:这三种仓库都使用,组件库开发人员用hosted地址进行发布,proxy自动代理线上的仓库,业务开发人员使用group的地址作为源,group来源于hosted和proxy。

配置hosted类型的仓库

因为我们要上传自己npm包到这个库中,所以需要设置这个库为Allow redeploy

配置proxy类型的仓库

这个类型的仓库只需要配置远程仓库的地址;

配置group类型的仓库

这个类型的仓库只需要设置来源即可,来源就是已经存在的库;

组件库开发人员的使用

对于组件库开发人员来说,要事先建一下角色和用户:

需要把源切换至hosted地址:

bash 复制代码
nrm add npm-hosted http://*****/repository/npm-hosted
nrm use npm-hosted
npm login # 用户名和密码就是新建用户的时候设置的

组件库里面添加配置:

json 复制代码
"publishConfig": {
    "registry": "http://*****/repository/npm-hosted/"
}

然后运行npm publish,即可完成组件库的发布。

业务开发人员的使用

对于业务开发人员来说,只需要把源切换到group地址就可以了:

bash 复制代码
nrm add npm-group http://*****/repository/npm-group
nrm use npm-group
npm install 组件库
相关推荐
LabVIEW开发3 分钟前
将自定义 DLL 与 INI 文件部署到 LabVIEW 实时目标
前端·labview·labview知识·labview功能·labview程序
IT_陈寒18 分钟前
Redis Pipeline用错竟比不用还慢,这个坑我帮你踩过了
前端·人工智能·后端
大模型码小白33 分钟前
数据可视化:AI处理多维数据的HTML5可视化方案
大数据·前端·javascript·人工智能·机器学习·信息可视化·html5
LabVIEW开发1 小时前
LabVIEW 前面板装饰图形的格式选择与自定义选板添加
前端·labview·labview知识·labview功能·labview程序
掘金者阿豪1 小时前
GPT-6 Astra 来了,GPT-5.6 Sol 还值得用吗?聊聊 Coding、百万上下文、价格和 Plus/Pro
前端·后端
code 小楊1 小时前
腾讯开源 WeKnora 深度解析:RAG 问答 + ReAct Agent 推理 + 自动 Wiki 图谱,三位一体的企业级知识中台
前端·人工智能·开源·知识图谱
roamingcode1 小时前
让 AI 的回答「逐段说话」:react-streaming 的顺序流式渲染实践
前端·人工智能·react.js·codex
cidy_981 小时前
Main 正式环境合并说明
前端
万物智能1 小时前
开源鸿蒙内核配置与驱动三条路径—【万物智能之开源鸿蒙OpenHarmony系统实战开发系列教程】
前端·后端
hunterandroid1 小时前
Android 多渠道打包与 Gradle 构建优化实战
android·前端·kotlin