安装
## 全局安装
npm install -g verdaccio
## 初始化
## 初始化完成后会在根目录 `.config/verdaccio` 生成 `config.yaml`、`htpasswd`
verdaccio
config.yaml
配置文件,需要在代码结尾添加 listen: 0.0.0.0:4873
,默认使用 localhost:4873
,只能在本机访问,无法局域网访问。
如果需要更改 npm
源,可以在 uplinks
中把 npmjs
的 url
改成 http://registry.npm.taobao.org/
。
其他:
storage: ./storage # 所有包的缓存目录
plugins: ./plugins # 插件目录
file: ./htpasswd # 用户信息存储目录
htpasswd
这个文件可能不会生成,自己新建一个就好了。
echo "" > htpasswd
注册用户
## 安装工具
npm install htpasswd-for-sinopia -g
## 进入 `.config/verdaccio` 文件夹
sinopia-adduser
## 根据提示新增用户
## 在 npm adduser 的时候回提示使用小写字母,但是如果是大写字母注册的可以使用全小写字母登录,库里会有两个数据,有点奇怪。
启动服务
一般情况大家都推荐使用 pm2
启动服务,但是我这边尝试的时候发现 pm2
的错误日志一直提示 The fs.promises API is experimental
,服务器上的 node
版本是 v10.16.3
,符合 verdaccio
最低需求。
后来使用 nohup
的方式启动服务就正常了。
使用
## 修改 npm 源
npm set registry https://www.onlyling.com:4873
## 添加用户
npm adduser --registry https://www.onlyling.com:4873
## 发布库/模块
npm publish --registry https://www.onlyling.com:4873
## 安装模块
yarn @your-scope/module-name