前言
无论什么开发语言都需要有包管理工具,对代码片段进行分发,且当处于企业化开发场景下,我们一般都避免不了私有仓的创建。npm作为nodeJS下的包管理工具,我们可以使用verdaccio进行私有npm仓库的搭建。
verdaccio安装
使用npm全局安装即可.
1 | npm install -g verdaccio |
安装成功后直接运行verdaccio,在终端日志中找到config.yaml配置文件的路径。修改一些基本配置,如web页面标题等。对于外部nginx而言,我们需要的是子路径的配置,用来于设置反向代理时子路径的一一对应。
1 | url_prefix: '/verdaccio/' |
对应nginx反向代理设置如下:
1 | location ~ ^/verdaccio/(.*)$ { |
当然你也可以直接指定配置文件进行运行:
1 | verdaccio --config /home/user/verdaccio/config.yaml |
进程常驻
我们使用forever进行常驻,未安装的则需提前安装。
1 | sudo npm install -g forever #可选 |
其它
verdaccio的使用主要有几个注意事项
- 建议直接设置为registry
1
npm set registry https://www.svinvy.com/verdaccio/
- 设置package访问权限,详见官网
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16packages:
# scoped packages
'@scope/*':
access: $all #跟all相对的有authenticated,即需登录认证
publish: $all
proxy: server2#移除proxy则代表不使用registry.npmjs.org等公有仓库备用
'private-*':
access: $all
publish: $all
proxy: uplink1
'**':
access: $all
publish: $all
proxy: uplink2 - 用户注册
1
npm adduser --registry https://www.svinvy.com/verdaccio/