使用verdaccio搭建前端npm私有库

993 阅读2分钟

一、 目的

1.1、更为安全:把组件放到私有库中,只有内网可以访问,可以避免组件中业务的泄露;

1.2、复用模块:多个项目之间有重复的共有模块,当需要修改模块,通过简单的统一的配置就可以实现;提炼后的组件有专门的地址可以用来查看,方便使用,在后期项目的引用中也能节约开发成本

1.3、提升npm包下载速度角度考虑:使用内部的地址,能够在开发下载node包的同时,将关联的依赖包缓存到verdaccio服务器中,下载速度更快;

1.4、公司技术沉淀角度考虑:知识的沉淀,在公司业务相关的应用上尤佳;

1.5、开发效率角度考虑:使私有公共业务或组件模块能以共有包一样的管理组织方式,保持一致性,提高开发效率;

1.6、后面配合docker进行,实现各端环境统一。

二、目前私有库选型对比

三、verdaccio简介

Verdaccio 是一个简单的、零配置本地私有 npm 软件包代理注册表。Verdaccio 开箱即用,拥有自己的小型数据库,能够代理其它注册表(例如 npmjs.org),缓存下载的模块。此外 Verdaccio 还易于扩展存储功能,它支持各种社区制作的插件,以连接到亚马逊的 s3、谷歌云存储等服务或创建自己的插件。

默认上级镜像源 url: registry.npmjs.org/

3.1 verdaccio安装与使用

npm i verdaccio –g

verdaccio本地启动

3.2服务端启动

npm install -g pm2 --unsafe-perm
pm2 start verdaccio
pm2 show verdaccio

四、 npm客户端使用

4.1 npm镜像管理常用命令

npm adduser --registry http://localhost:4873    //添加用户

npm publish --registry http://localhost:4873

4.2 nrm仓库管理工具简介及使用

nrm(npm registry manager )是npm的镜像源管理工具,有时候国外资源太慢,使用这个就可以快速地在 npm 源间切换。

nrm 常用命令

nrm ls
nrm add knpm   http://192.168.6.100:4873/  添加镜像源
nrm del knpm  删除镜像源
nrm use knpm  切换镜像源

五、项目测试使用

六、后期扩展

配合docker多环境统一

参考文章 verdaccio官方文档: verdaccio.org/docs/zh-CN/…

verdaccio相关文档:

www.jianshu.com/p/0c905e4a8…

www.jianshu.com/p/c9681016e…

blog.csdn.net/qq_36256944…

blog.codemonkey.cn/archives/61…

nrm 相关文档:

www.jianshu.com/p/94d084ce6…