verdaccio 搭建npm私服

搭建npm私服

Sinopia、verdaccio、Nexus

sinopia是一个用来做npm的registry的私有+缓存镜像的开源组件,但是这个项目现在已经不在维护了(2015年就没维护了),需要移步到verdaccio这个fork。

window下verdaccio搭建npm私服过程

  1. 安装
npm install -g verdaccio --unsafe-perm
# 加上–unsafe-perm的原因是防止报grywarn权限的错

2.运行

verdaccio

在这里插入图片描述
这是运行结果,很方便吧
verdaccio 搭建npm私服_第1张图片
但是上面直接运行有两个问题

  • 只能localhost:4873127.0.0.1:4873 访问,不能用内网ip访问
  • 运行不稳定

解决办法

打开配置文件confg.yaml(这个配置文件在运行verdaccio时,会显示路径)
在配置文件最后添加监听端口,配置文件详解请见文末尾

listen: 0.0.0.0:4873                    # listen on all addresses 

不稳定的问题解决办法: pm2守护verdaccio进程

安装pm2

npm install -g pm2 --unsafe-perm

启动verdaccio

pm2 start verdaccio

查看log

pm2 show verdaccio   

添加用户

npm adduser --registry http://192.168.XX.XX:4873        
Username: user123
Password: 
Email: (this IS public) [email protected]
Logged in as rong on http://192.168.XX.XX:4873/.

添加后就自动登录了,然后可发布npm

有账号登录

npm login
Username: user123
Password:

发布npm包到私有仓库

npm publish --registry http://192.168.xxx.xxx:4873

使用私有仓库npm包

npm config ls
npm set registry http://192.168.xxx.xxx:4873

设置后,优先去本地找,再去中央仓库找

最后推荐一个npm仓库切换工具nrm

安装nrm

npm install -g nrm

添加自己的私服

nrm add ttnpm http://XX.XXX.XXX.XXX:4873/

查看所有下载源

nrm ls

将npm包的下载地址改到私服:

nrm use ttxnpm

你可能感兴趣的:(node.js,yarn)