NPM软件源|NodeJs

NPM软件源提供NodeJs的软件包存储和分发,国内可通过配置镜像加速下载软件包,本文提供常用的镜像站列表与配置方法。

npmjs.com 是 NPM 的 “官方应用商店” 或 “中央仓库”,在 2020 年 GitHub 正式收购了 npm 后,其核心基础设施(包括网站和公共仓库)的维护工作就由 GitHub 维护管理。

npm 是 Node.js 的默认包管理器,会随 Node.js 一同自动安装。此外还有 cnpmpnpmyarn 等包管理工具。

但是对于国内开发者来说,使用 npm 的官方源(https://npmjs.com)下载依赖包通常会比较慢,一般使用国内的镜像站来加速下载。

镜像源配置方法

单次使用

单次使用可以通过 npm 的 --registry 选项来配置国内的源。

$ npm install <package> --registry=https://registry.npmmirror.com

永久配置

永久配置将配置项保存到配置文件中,下次使用 npm 命令时,会自动读取配置项。

$ npm config set registry https://registry.npmmirror.com

该命令会在 ~/.npmrc (Windows路径为:C:\Users\<UserName>\.npmrc)文件中写入配置项

$ cat ~/.npmrc
registry=https://registry.npmmirror.com

国内镜像站

npmmirror(原淘宝镜像站)

站点地址: https://npmmirror.com

这是一个完整 npmjs.com 镜像,与官方服务实时同步,是个只读的镜像站。

该社区定制了一个 cnpm 命令行工具代替默认的 npm。cnpm 支持除了写相关操作外的所有命令,例如 installinfoview 等。

安装 cnpm

$ npm install -g cnpm --registry=https://registry.npmmirror.com

或者你直接通过添加 npm 参数 alias 一个新命令:

alias cnpm="npm --registry=https://registry.npmmirror.com \ --cache=$HOME/.npm/.cache/cnpm \ --disturl=https://npmmirror.com/mirrors/node \ --userconfig=$HOME/.cnpmrc"

当然,你也可以使用任意你心仪的命令行工具,只要配置 registry 即可

$ npm config set registry https://registry.npmmirror.com

腾讯云镜像站

腾讯云镜像源 提供了 npm 的加速服务,设置方法

运行以下命令:

npm config set registry http://mirrors.tencent.com/npm/

避免 SSL 校验失败:

npm config set strict-ssl false

移除代理配置:

npm config delete proxy
npm config delete https-proxy

查看配置信息:

npm config list

注意:npm config list 的结果不应出现 proxy 配置,否则容易出现 npm 组件下载/上传失败的情况

华为云

华为云提供 npm 镜像加速服务,禁止目录浏览,默认下载速度比较慢,注册登录后可获取 3~5MB/s CDN下载加速地址,下载速度提升10倍。

npm config set registry https://mirrors.huaweicloud.com/repository/npm/
npm cache clean -f

华为开源镜像站同时也提供了工具类加速镜像,可以通过如下的命令设置加速地址:

1、设置nodejs工具的镜像地址

npm config set disturl https://mirrors.huaweicloud.com/nodejs 

2、设置Node-Sass的镜像地址

npm config set sass_binary_site https://mirrors.huaweicloud.com/node-sass

3、设置浏览器引擎驱动镜像地址

npm config set phantomjs_cdnurl https://mirrors.huaweicloud.com/phantomjs
npm config set chromedriver_cdnurl https://mirrors.huaweicloud.com/chromedriver
npm config set operadriver_cdnurl https://mirrors.huaweicloud.com/operadriver 

4、设置Electron和Python的镜像地址

npm config set electron_mirror https://mirrors.huaweicloud.com/electron/
npm config set python_mirror https://mirrors.huaweicloud.com/python