前言
为什么需要搭建私服
- 私密性高,仅团队共享
- 使用局域网更快的安装速度
- 公司内部会积累一些业务组件,方便他人直接引用
原理
- 我们平时使用npm publish进行发布时,上传的仓库默认地址是npm
- 通过Verdaccio工具在服务器上新建一个仓库地址,再把本地的默认上传仓库地址切换到服务器仓库地址即可
- 当npm install时没有找到本地的仓库,则Verdaccio会默认从npm中央仓库(我们可以设置不同的镜像地址比如淘宝等)下载
安装
安装过程就看官方的文档,不再赘述官方安装地址。 推荐使用docker安装
如何使用私服
- 在项目根目录中新建一个.npmrc文件(.npmrc是npm的配置文件,当执行npm中的命令的时候,会读取这个配置文件。比如npm install)
- 在.npmrc中指定源,将源地址改为前端私服的地址,这样就将npm的源地址从npm设置为了私服
如何引入内部仓库的包
- 打开前端私服的地址查看你要安装的包
- 打开package.json,在dependencies中添加包的名称和版本,然后执行npm install 或者直接执行npm install 你的包的名字 --save
如何添加账号和密码(发布需要使用)
npm adduser --registry 你的私服地址
按照命令提示进行操作后就默认登录了。
如果你有了.npmrc,并且在里面设置了私服地址,可以直接输入下方命令
如何发布依赖包
npm init -y新建项目- 此时的packagejson内容为
-
和package.json同目录新增index.js文件。在index.js范暴露一个add方法,计算两数的和
-
package.json添加files字段,配置npm发布时要上传的文件,此时只需要添加index.js, package.json文件会默认上传
-
发布包到verdaccio私有库 执行 npm publish
-
打开私服页面,可以看到你刚才发布的组件
如何删除依赖包
npm unpublish <package-name> --force