搭建 npm 私服 指南

搭建NPM私服

本篇文章以第二种方式为主,因为截至目前 sinopia 包已经有5年未曾更新,可能已经不再维护了,而 verdaccio 的包目前还在维护和更新。

1. 第一种方式:使用 sinopia 包

sinopia 是一个可以快速搭建本地npm镜像的服务,安装使用非常简单,最大的好处是可以很方便的管理私有模块。

# 安装
# 安装后会生成一个默认配置文件 config.yaml ,可以后续更改
$ npm install -g sinopia

# 启动
$ sinopia

# 设置npm镜像
# 也可以在具体操作的时候指定 
# npm adduser --registry http://localhost:4873 
$ npm set registry http://localhost:4837/

# 如果使用 HTTPS 请添加一个适当的 CA 信息
# null 表示从操作系统获取 CA 列表
$ npm set ca null

2. 第二种方式:使用 verdaccio 包

2.1. 在本地搭建

# 安装
# 安装后会生成一个默认配置文件 default.yaml ,可以后续更改
$ npm install -g verdaccio

# 查看 npm 全局安装的位置
$ npm root -g

2.1.1 启动

使用命令行启动后,生成一个默认的 config.yaml 配置文件,并且会启动一个 http://localhost:4873 的服务,访问 http://localhost:4873 服务即可看到。
在这里插入图片描述

同时会在 /AppData/Roaming/目录中新建一个 verdaccio 文件夹作为私服的存储地址。自己发布的包会放在 storage 目录中
在这里插入图片描述

# 启动服务
$ verdaccio

在这里插入图片描述

2.1.2 添加用户

默认是没有用户的,需要先添加一个用户,输入用户名 username 和密码 passowrd,如username: adminpassword: admin。注意在输入密码时是不显示输入的内容的,所以要准确输入,以防多输入或者少输入或者输入错误的字符,导致登录的时候密码输入错误。

# 添加用户密码
$ npm adduser --registry http://localhost:4873/
username: # 输入用户名
password: # 输入密码
2.1.3 发布自己的包

发布自己的包后,登录 http://localhost:4873, 或者刷新 http://localhost:4873页面即可看到自己已经发布成功的包。

注意想要发布本地的 npm 包,需要在 npm 项目中的根目录执行以下命令,因为 npm publish 命令回去查找并读取当前目录下的 package.json 文件。

# 发布本地 npm 包
$ npm publish --registry http://localhost:4873/

在这里插入图片描述
发布成功后在/AppData/Roaming/verdaccio/storage/目录下就可以看到已经发布的包了。

在这里插入图片描述
此时再去查看 http://localhost:4873/,就能看到已经发布的 npm 包了。

在这里插入图片描述
在这里插入图片描述

2.1.4 安装自己的包

如果已经启动了 verdaccio 服务,则优先会查找本地 /AppData/Roaming/verdaccio/storage/目录中的已存在的包。

# 安装依赖包
$ npm install vite-react-todolist

但是也有例外,当无法自动查找本地的包时,可以指定本地的安装路径,如下:

$ npm install vite-react-todolist --registry http://localhost:4873

在这里插入图片描述
在这里插入图片描述

2.2. 在远程服务器搭建

# 安装 pm2
$ npm install pm2 -g

# 启动 verdaccio
$ pm2 start verdaccio

# 停止 verdaccio
$ pm2 stop verdaccio

# 重启 verdaccio
$ pm2 restart verdaccio

# 删除 verdaccio
$ pm2 delete verdaccio

# 查看 verdaccio 日志
$ pm2 logs verdaccio

参考

  • 1
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值