关于npm 镜像源你想知道的都在这里了

npm、npm registry 和 npm 镜像源的关系

npm(Node Package Manager)是一个 JavaScript 包管理器,它允许开发者安装、共享和管理依赖,npm 也是一个cli,用于与 npm 的在线服务交互,这个在线服务就是 npm registry。

npm registry 是一个大型的数据库,用于存储公开发布的 JavaScript 代码包。当使用 npm install 命令安装一个包时,npm 客户端会与 npm registry 通信,下载并安装请求的包。

npm 镜像源是 npm registry 的一个镜像,它包含了 npm 官方库中的所有包的副本,用于提高下载速度,特别是在某些地区访问官方源可能较慢或不稳定的情况下。通过切换到一个更快或地理位置更近的镜像源,开发者可以更快地下载和安装 npm 包。

可用源

npm 官方原始镜像

registry.npmjs.org

国内访问极慢,甚至不能访问

yarn 官方源

registry.yarnpkg.com/

慎用,国内不能访问

淘宝 NPM 镜像

registry.npmmirror.comregistry.npm.taobao.org

registry.npm.taobao.orgregistry.npmmirror.com 实际上它们指向的是同一个服务。根据最新的信息,原来的 registry.npm.taobao.org 已经被替换为 registry.npmmirror.com。当点击 registry.npm.taobao.org 时,会自动跳转到 registry.npmmirror.com现在推荐使用registry.npmmirror.com

原淘宝 npm 域名即将停止解析,正如在《淘宝 NPM 镜像站喊你切换新域名啦》 中预告的那样:npm.taobao.orgregistry.npm.taobao.org 将在 2022.06.30 号正式下线和停止 DNS 解析。域名切换规则:

npm.taobao.org => npmmirror.com registry.npm.taobao.org => registry.npmmirror.com

  1. 切换
bash 复制代码
npm config set registry https://registry.npmmirror.com
  1. 验证命令
bash 复制代码
npm config get registry

如果返回registry.npmmirror.com ,说明镜像配置成功。

腾讯云 NPM 镜像: mirrors.cloud.tencent.com/npm/

1、切换

bash 复制代码
npm config set registry http://mirrors.cloud.tencent.com/npm/
  1. 验证命令
bash 复制代码
npm config get registry

如果返回mirrors.cloud.tencent.com/npm/,说明镜像配置成功。

华为云 NPM 镜像: mirrors.huaweicloud.com/repository/...

  1. 切换
bash 复制代码
npm config set registry https://mirrors.huaweicloud.com/repository/npm/
  1. 验证命令
bash 复制代码
npm config get registry

如果返回mirrors.huaweicloud.com/repository/...,说明镜像配置成功。

设置源

使用命令行设置全局源

上面的 npm config set registry 命令会设置全局源,例如

bash 复制代码
npm config set registry https://registry.npmmirror.com

使用 nrm 工具管理多个源

nrm 是一个 npm 源管理器,可以快速切换不同的源。首先安装 nrm:

bash 复制代码
npm install -g nrm

然后使用 nrm use 来切换源,例如:

bash 复制代码
nrm use taobao

设置临时源

只针对当前 npm install 命令生效

在命令行中临时为要安装的包指定源: 通过 --registry 参数来临时指定源。例如:

bash 复制代码
npm install express --registry https://registry.npmmirror.com

设置项目源

该方法只针对当前项目生效

创建项目根目录下的 .npmrc 文件。在 .npmrc 文件中添加或修改 registry 的值:

bash 复制代码
registry=https://registry.npmmirror.com

保存 .npmrc 文件后,可以通过运行 npm config ls 命令来查看当前项目的配置,确保源已经被正确设置。

设置命名空间源

该方法只针对某个命令空间的内的包生效

在 .npmrc 中设置

bash 复制代码
@xdf:registry=https://registry.npmmirror.com

或者使用命令行操作:

bash 复制代码
npm config set "@xdf:registry" "https://registry.npmmirror.com"

总结

npm 源配置常用方法以上都已列出,对于 yarnpnpm 用法也是一致的,只不过yarn的配置文件使用 .yarnrc。

相关推荐
太平洋月光12 分钟前
AI 快捷指令:Cursor Rules · Commands · Skills
前端·ai编程
默_笙16 分钟前
😁 LLM 不知道的事它不会说"不知道",而是会"编"——RAG 就是让它闭嘴先查资料
前端·javascript
stringwu17 分钟前
用 LangGraph 落地飞书 Bug 自动修复 Agent 实践
前端
Revolution6118 分钟前
变量提升到底提升了什么:为什么 var 是 undefined,let 却直接报错
前端·javascript
Revolution6123 分钟前
本地明明正常,为什么 CI 又挂了:一次前端构建失败的排查过程
前端·前端工程化
太平洋月光30 分钟前
stagewise如何结合cursor开发
前端·ai编程
前端Hardy30 分钟前
JavaScript 终于又进化了!ES2026 正式发布,这些新特性你必须知道!
前端
光影少年31 分钟前
react navite 页面跳转、传参、路由监听、导航栏自定义
前端·react native·react.js
黑土豆42 分钟前
CSS 新特性:Container Queries 到底能解决什么痛点?
前端·css
问商十三载1 小时前
2026法律行业AI引擎生成式优化怎么优化?三层专业加固提排名,零成本提33%引用率附适配表
java·前端·人工智能·算法