NodeJS使用淘宝npm镜像站的各种姿势

作者: 冯宇Ops | 来源:发表于2017-02-20 12:24 被阅读6783次

    NodeJS镜像配置

    nodejs和npm的仓库托管在S3上,在国内访问十分困难,这里可以用淘宝的镜像站npm.taobao.org代替。以下提供几种不同的使用淘宝NodeJS镜像的方法:

    nvm使用淘宝镜像

    很多人会使用nvm管理本地nodejs版本。而nvm支持通过环境变量指向nodejs和iojs的下载地址。

    配置这两个环境变量即可:

    Linux/Unix系统使用以下命令设置这个环境变量:

    export NVM_NODEJS_ORG_MIRROR=https://npm.taobao.org/mirrors/node
    export NVM_IOJS_ORG_MIRROR=https://npm.taobao.org/mirrors/iojs
    

    永久生效请自行添加到shell的启动脚本配置中(bash可以添加到~/.bashrc,zsh可以添加到~/.zshrc)。

    之后nvm ls-remotenvm install命令将会使用淘宝的镜像了。

    npm使用淘宝镜像安装包

    npm使用registry这个属性指定仓库,因此配置这个属性即可。修改npm配置属性的几种方法详见官方文档

    这里只贴出修改registry的方法,以下三种任意一种即可:

    • 修改~/.npmrc文件(没有就自行新建一个),写入registry = https://registry.npm.taobao.org
    • 使用命令npm config set registry https://registry.npm.taobao.org(效果和上面等效)
    • 添加环境变量NPM_CONFIG_REGISTRY=https://registry.npm.taobao.org

    同样的方法,将disturl这个配置同样指向: https://npm.taobao.org/dist, 任选一种方案:

    npm config set disturl https://npm.taobao.org/dist
    

    node-sass/phantomjs/electron使用淘宝镜像站

    有些软件包安装的时候会下载已预编译好的二进制格式,比如node-sass/phantomjs/electron等等,这几个软件包大多数都将编译好的成品托管在S3上。

    比较幸运的是这些软件包都有办法指定下载的路径,有兴趣的可以自己去读这些包的安装代码,会去从环境变量或npmrc配置中读取下载的路径,这里只贴出npmrc方案。同样也适用于npm环境变量配置方案:

    npm config set electron_mirror https://npm.taobao.org/mirrors/electron/
    npm config set sass_binary_site https://npm.taobao.org/mirrors/node-sass/
    npm config set phantomjs_cdnurl https://npm.taobao.org/mirrors/phantomjs/
    

    然后试试npm install phantomjs-prebuilt,就会看到从淘宝镜像站下载phantomjs了。

    相关文章

      网友评论

        本文标题:NodeJS使用淘宝npm镜像站的各种姿势

        本文链接:https://www.haomeiwen.com/subject/wyzswttx.html