对于一些不方便公开的JavaScript库,可以通过自建私有npm服务器的方式,搭建公司内部的包管理服务器。

介绍

搭建私有的npm服务器,可以同时安装私有npm包和官方npm包。

安装

1
npm i -g verdaccio

开启

1
2
3
$> verdaccio
warn --- config file - /home/.config/verdaccio/config.yaml
warn --- http address - http://localhost:4873/ - verdaccio/3.0.1

通过上面提示可以知道,默认端口号为4873,配置文件为/home/.config/verdaccio/config.yaml

配置

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
storage: ./storage
auth:
htpasswd:
file: ./htpasswd
uplinks:
npmjs:
url: https://registry.npmjs.org/
packages:
'@*/*':
access: $all
publish: $authenticated
proxy: npmjs
'**':
proxy: npmjs
logs:
- {type: stdout, format: pretty, level: http}

可以通过添加listen: 0.0.0.0:4873开启外网的访问。

其他

可以使用forever/pm2来守护verdaccio

可以通过nrm管理/切换npm源

官方文档