Docker + Verdaccio 搭建 npm 私服仓库

Docker + Verdaccio 快速搭建 npm 私服仓库

最近在搭建公司的前端基础建设,需要搭建本地部署的 npm 私服仓库。最后选择的方案是 Verdaccio,Verdaccio 是一个轻量级的 Node.js npm 私服仓库,相较于其他方案,既快速又简单。

先决条件

  • 掌握 Docker 相关知识
  • 掌握 npm 公共仓库发布流程

使用 Docker 拉取 Verdaccio 镜像

bash 复制代码
docker pull verdaccio/verdaccio

运行 Verdaccio 容器

bash 复制代码
docker run -it --rm --name verdaccio -p 4873:4873 verdaccio/verdaccio

此时,会在 4873 端口运行 Verdaccio,在浏览器中我们可以通过 http://localhost:4873 进行访问。

注册私服账户

创建用户

bash 复制代码
npm adduser --registry http://localhost:4873

登录私服

bash 复制代码
npm login --registry http://localhost:4873

将 npm 包发布至私服

package.json 配置如下,这样在 npm publish 的时候会将包的上传目的地更改为自定义仓库。

json 复制代码
{
  "name": "@mono/utils"
  "publishConfig": {
    "registry": "http://localhost:4873"
  }
}

使用 npm publish 进行发布:

bash 复制代码
npm publish

发布后我们可以通过私服地址预览:

通过私服安装 npm 包

在应用中引入私服的包,需要在 .npmrc 中对包源进行配置:

txt 复制代码
@mono:registry=http://localhost:4873

上述 http://localhost:4873 需要替换为私有部署的地址,@mono 代表 mono 域下的包全部从私服中读取。

此时,执行 npm i 时会从私服下载 @mono 开头的包。

不使用 Docker?

虽然可以,但是不推荐。

通过 npm/pnpm 全局安装 Verdaccio,然后通过命令行启动。

bash 复制代码
npm install -g verdaccio
verdaccio
相关推荐
sg_knight3 分钟前
VSCode如何修改默认扩展路径和用户文件夹目录到D盘
前端·ide·vscode·编辑器·web
一个处女座的程序猿O(∩_∩)O12 分钟前
完成第一个 Vue3.2 项目后,这是我的技术总结
前端·vue.js
mubeibeinv13 分钟前
项目搭建+图片(添加+图片)
java·服务器·前端
逆旅行天涯19 分钟前
【Threejs】从零开始(六)--GUI调试开发3D效果
前端·javascript·3d
m0_7482552640 分钟前
easyExcel导出大数据量EXCEL文件,前端实现进度条或者遮罩层
前端·excel
web147862107231 小时前
C# .Net Web 路由相关配置
前端·c#·.net
m0_748247801 小时前
Flutter Intl包使用指南:实现国际化和本地化
前端·javascript·flutter
飞的肖1 小时前
前端使用 Element Plus架构vue3.0实现图片拖拉拽,后等比压缩,上传到Spring Boot后端
前端·spring boot·架构
青灯文案11 小时前
前端 HTTP 请求由 Nginx 反向代理和 API 网关到后端服务的流程
前端·nginx·http
m0_748254882 小时前
DataX3.0+DataX-Web部署分布式可视化ETL系统
前端·分布式·etl