verdaccio私有npm服务器
介绍
- verdaccio(读:韦尔搭桥)是一个 Node.js创建的轻量的私有 npm proxy registry
背景
- 希望有个统一管理公司公共包平台,且有相应的权限访问和配置
- 希望下载公共包走公共仓库, 私有包走内部私有仓库
- 与npm、yarn兼容
安装
- npm全局安装: npm install -g verdaccio
- docker安装: docker pull verdaccio/verdaccio (官方的docker镜像)
使用
1 | //1. 添加用户 |
配置
全局配置
1
npm config set @youdao:registry "http://111.11.11.1:4100/"
项目根目录配置
1
2//项目根目录中新建文件.npmrc来指定@youdao/xxxx包安装源
@youdao:registry "http://111.11.11.1:4100/
部署
- pm2进程守护
- nginx配置
Nrm管理镜像源
背景
- npm包有很多的镜像源,有的是私有包、有的源有的时候访问失败、有的源可能没有最新的包等等,所以有时需要切换npm的源,nrm包就是解决快速切换问题的。
安装
npm install -g nrm
使用
1 | // 列出可选择的源 |
lerna多包管理
背景
npx
介绍
npx和npm的区别
- npm是永久存在,npx是临时安装,用完后删除
- npx会帮你执行依赖包里面的二进制文件,侧重于执行命令; npm会帮你下载包到项目中,侧重于包的管理
原理
执行node-modules包
1
2
3
4
5
6
7
8
9
10// 方法一:在项目脚本或 package.json 的 scripts 字段中对其调用进行定义
{
"scripts": {
"mocha": 'mocha --version'
},
}
npm run mocha
// 方法二: 必须要要定位到 node_modules 中用繁琐的命令才能实现在命令行中对其进行调用
./node-modules/.bin/mocha --versionnpx执行原理
1
2
3
4npx mocha --version
// 1. npx 会自动查找当前依赖包中的可执行文件
// 2. 如果找不到,就会去 PATH 里找
// 3. 如果依然找不到,就会帮你安装
使用场景
1. 避免全局安装,执行一次性命令
1 | // npx 将 create-react-app 下载到一个临时目录,使用以后再删除 |
2. 指定 Node 执行版本
1 | // npx -p 参数,我们可以指定要安装的模块,后面继续跟着要执行的命令 |
3. 执行gitHub源码
1 | // 执行仓库代码 |
nvm
介绍
nvm: 多版本nodejs管理工具