HOW - 企业团队自建 npm 仓库

发布于:2025-04-20 ⋅ 阅读:(15) ⋅ 点赞:(0)

要搭建企业内部使用的 npm 服务(即私有 npm 仓库),让企业员工可以像使用 npm 官方仓库一样使用内部包,并且控制包的发布、权限与访问,通常需要以下几个步骤:

一、明确需求

  • 是否只做私有包托管
  • 是否需要代理 npm 官方仓库以加速/缓存?
  • 是否需要支持权限管理(读/写/发布)
  • 是否需要支持web 管理界面
  • 是否考虑镜像同步(与 npm 官方同步)?

二、选型:常用方案

名称 描述 推荐场景
Verdaccio 开源、轻量、易部署的私有 npm 仓库 中小团队首选
Nexus Repository OSS 支持多种仓库(npm、maven、docker 等) 多语言、多工具统一仓库
GitHub Packages / GitLab Packages 与代码库集成,支持私有 npm 已用 GitHub/GitLab 的企业
Cloud 方案(如阿里云制品库) 云服务托管 无需维护服务器,付费

最常用的选择是 Verdaccio,因为它:

  • 快速搭建
  • 支持 npm 包缓存代理
  • 支持私有包
  • 支持用户登录 & 权限配置
  • 社区活跃

三、Verdaccio 搭建步骤

1. 安装 Node.js 环境

node -v
npm -v

建议使用 LTS 版本。

2. 全局安装 verdaccio

npm install -g verdaccio

3. 启动服务

verdaccio

默认监听在 http://localhost:4873

4. 配置(可选)

配置文件一般在 ~/.config/verdaccio/config.yaml,你可以修改:

  • storage: 本地包存储路径
  • auth: 用户认证方式
  • uplinks: 上游代理的 npm 仓库
  • packages: 包访问与发布权限

示例:

uplinks:
  npmjs:
    url: https://registry.npmjs.org/

packages:
  '@company/*':
    access: $authenticated
    publish

网站公告

今日签到

点亮在社区的每一天
去签到