verdaccio
安装 verdaccio
npm install -g verdaccio
查看 verdaccio 相关信息 (安装完成,是不是很简单✌)
verdaccio
出现下面说明安装成功
info --- config file - /Users/xxx/.config/verdaccio/config.yaml
info --- the "crypt" algorithm is deprecated consider switch to "bcrypt" in the configuration file. Read the documentation for additional details
info --- using htpasswd file: /Users/xxx/.config/verdaccio/htpasswd
info --- plugin successfully loaded: verdaccio-htpasswd
info --- plugin successfully loaded: verdaccio-audit
warn --- http address - http://0.0.0.0:4873/ - verdaccio/5.26.3
安装成功后会在启动用户目录生成配置文件 config.yaml
例如: /Users/xxx/.config/verdaccio/config.yaml
主要配置文件
config.yaml 启动后生成的是仓库的配置文件,仓库的配置都写在里面
htpasswd 当有用户注册后会生成的用户账号信息文件,记录账号和密码以及创建日期
storage 所有上传的包都保存在这
config.yaml 配置项讲解
在配置前请一定注意配置文件内的缩进,不然会启动会报错
- storage 设置用户上传包的存放目录
- plugins 插件目录
- uplinks 设置上游匹配,主要用于包匹配不到时,系统该往哪里去找这个包
下面提供一种简易的配置(请注意最后一行)
# 设置保存放目录
storage: ./storage
plugins: ./plugins
web:
title: Npm
# 设置中文显示
i18n:
web: zh-CN
# 设置两个上游
uplinks:
npmjs:
url: https://registry.npmjs.org/
cnpmjs:
url: https://registry.npmmirror.com/
# 添加一项 包的权限控制,只允许登录的用户可以下载上传
packages:
'@my/*':
access: $authenticated
publish: $authenticated
unpublish: $authenticated
# 通配项,即上面配置不到的包都走这个
'**':
access: $all
publish: $authenticated
unpublish: $authenticated
# 代理上游、如果本地找不到这个包应该去哪找,可以设置多个,按顺序查找
proxy: cnpmjs npmjs
# 设置监听端口、以及支持 IP 访问
listen:0.0.0.0:4873
安装 verdaccio 成功后要再安装一下 pm2 将 verdaccio 启动起来
npm install pm2 -g
启动 verdaccio (启动成功🎉)
pm2 start verdaccio
如果 pm2 显示的 verdaccio 状态是 online 则是正常的,如果是 stopped,可以试试以下命令
pm2 start <verdaccio在系统的绝对位置>
这样就可以正常访问地址 http://localhost:4873 或者 http://ip:4873
坑🕳
- 因为我是搭建在 windows server 服务器上,发现服务器可以访问 http://127.0.0.1:4873 端口,ip + 端口却访问不了,后来发现是 pm2 项目没启动成功,可以查看启动 verdaccio 的日志看看什么问题 pm2 logs verdaccio
- 配置 config.yaml 文件路径因为我是 windows server 记得配置的路径是正斜杠不是反斜杠
参考文献✈
私有npm库平台搭建
pm2 启动verdaccio 报错
Window下添加telnet及端口开放
- 本文作者: MrRetro博客
- 本文链接: http://mrretro.gitee.io/retroblog/retroblog/2024/01/04/npm私有化搭建之verdaccio/
- 版权声明: 本博客所有文章除特别声明外,均采用 MIT 许可协议。转载请注明出处!