常用依赖包管理工具换源方法大全

目录

  1. 1. 1. npm 切换国内源
    1. 1.1. 设置淘宝镜像为默认源:
    2. 1.2. 验证是否设置成功:
    3. 1.3. 临时使用淘宝镜像:
  2. 2. 2. Yarn 切换国内源
    1. 2.1. 设置淘宝镜像为默认源:
    2. 2.2. 验证是否设置成功:
    3. 2.3. 临时使用淘宝镜像:
  3. 3. 3. pip 切换国内源
    1. 3.1. 临时使用豆瓣源:
    2. 3.2. 永久设置国内镜像:
  4. 4. 4. Conda 切换国内源
    1. 4.1. 临时使用清华源:
    2. 4.2. 永久设置清华大学源:
  5. 5. 5. Composer 切换国内源
    1. 5.1. 设置国内镜像:
    2. 5.2. 恢复默认源:
  6. 6. 6. RubyGems 切换国内源
    1. 6.1. 设置淘宝镜像:
    2. 6.2. 确认源是否配置正确:
  7. 7. 7. Maven 切换国内源
    1. 7.1. 修改 settings.xml:
  8. 8. 8. Gradle 切换国内源
    1. 8.1. 修改 build.gradle 文件:
  9. 9. 9. Node.js 镜像加速
  10. 10. 10. Docker 镜像加速
    1. 10.1. 设置 Docker 国内镜像:
  11. 11. 11. apt 换源(Ubuntu/Debian)
    1. 11.1. 步骤 1:备份原有的源列表
    2. 11.2. 步骤 2:编辑 sources.list
    3. 11.3. 步骤 3:选择一个国内源替换原有的源
    4. 11.4. 步骤 4:更新软件包列表
  12. 12. 12. 总结
  • 小小吐槽——CSDN 为什么要强制登录?
  • 在国内使用一些依赖包管理工具时由于网络问题下载速度往往比较慢通过切换到国内的镜像源可以显著加快依赖包的下载速度本文详细整理了常用依赖包管理工具切换到国内镜像的方法帮助开发者提高效率


    1. npm 切换国内源

    国内常用的 npm 镜像源是 淘宝镜像它同步了官方 npm 仓库的内容且下载速度较快

    设置淘宝镜像为默认源

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

    验证是否设置成功

    npm config get registry
    # 如果输出 https://registry.npmmirror.com<span class="bd-box"><h-char class="bd bd-beg"><h-inner>,</h-inner></h-char></span>说明设置成功<span class="bd-box"><h-char class="bd bd-beg"><h-inner>。</h-inner></h-char></span>
    

    临时使用淘宝镜像

    npm install --registry=https://registry.npmmirror.com
    

    2. Yarn 切换国内源

    Yarn 同样可以直接使用淘宝镜像源

    设置淘宝镜像为默认源

    yarn config set registry https://registry.npmmirror.com
    

    验证是否设置成功

    yarn config get registry
    # 输出 https://registry.npmmirror.com 表示设置成功<span class="bd-box"><h-char class="bd bd-beg"><h-inner>。</h-inner></h-char></span>
    

    临时使用淘宝镜像

    yarn add package-name --registry=https://registry.npmmirror.com
    

    3. pip 切换国内源

    Python 的包管理工具 pip 可以通过指定国内的镜像源来加速下载推荐使用豆瓣源

    临时使用豆瓣源

    pip install package-name -i https://pypi.douban.com/simple
    

    永久设置国内镜像

    在用户目录下创建或修改 pip 配置文件

    • Windows: C:\Users\你的用户名\pip\pip.ini
    • macOS/Linux: ~/.pip/pip.conf

    然后添加以下内容

    [global]
    index-url = https://pypi.douban.com/simple
    

    4. Conda 切换国内源

    Conda 是 Anaconda 的包管理工具设置国内镜像可以通过清华大学的镜像源

    临时使用清华源

    conda install package-name -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
    

    永久设置清华大学源

    conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
    conda config --set show_channel_urls yes
    

    5. Composer 切换国内源

    Composer 是 PHP 的包管理工具可以使用中国全量镜像由 Laravel China 社区维护

    设置国内镜像

    composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
    

    恢复默认源

    composer config -g --unset repos.packagist
    

    6. RubyGems 切换国内源

    Ruby 的包管理工具 gem 可以使用淘宝镜像

    设置淘宝镜像

    gem sources --add https://gems.ruby-china.com/ --remove https://rubygems.org/
    

    确认源是否配置正确

    gem sources -l
    

    7. Maven 切换国内源

    Maven 是 Java 的包管理工具可以通过修改 settings.xml 文件来使用国内镜像

    修改 settings.xml

    ~/.m2/settings.xml 中添加以下内容

    <mirrors>
      <mirror>
        <id>alimaven</id>
        <mirrorOf>central</mirrorOf>
        <name>aliyun maven</name>
        <url>https://maven.aliyun.com/repository/central</url>
        <layout>default</layout>
      </mirror>
    </mirrors>
    

    8. Gradle 切换国内源

    对于 Android 开发者Gradle 的国内源配置也可以显著加快依赖下载速度

    修改 build.gradle 文件

    allprojects {
        repositories {
            maven { url 'https://maven.aliyun.com/repository/public' }
            maven { url 'https://maven.aliyun.com/repository/jcenter' }
            maven { url 'https://maven.aliyun.com/repository/google' }
        }
    }
    

    9. Node.js 镜像加速

    如果你需要安装 Node.js 本身也可以通过淘宝镜像加速

    nvm install node --registry=https://registry.npmmirror.com
    

    10. Docker 镜像加速

    Docker 在国内下载镜像时可能会遇到速度缓慢的问题可以使用国内的镜像源加速

    设置 Docker 国内镜像

    /etc/docker/daemon.json 中添加以下内容

    {
      "registry-mirrors": [
        "https://registry.docker-cn.com",
        "https://mirror.ccs.tencentyun.com"
      ]
    }
    

    然后重启 Docker

    sudo systemctl restart docker
    

    11. apt 换源Ubuntu/Debian

    apt 是 Ubuntu 和 Debian 系统常用的包管理工具切换到国内镜像可以显著加快软件包的下载速度常用的国内镜像源有 阿里云清华大学中科大 镜像源

    步骤 1备份原有的源列表

    先备份 /etc/apt/sources.list 文件

    sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
    

    步骤 2编辑 sources.list

    使用文本编辑器打开 sources.list 文件

    sudo nano /etc/apt/sources.list
    

    步骤 3选择一个国内源替换原有的源

    你可以选择以下任意一个国内镜像源来替换原有的源

    • 阿里云镜像
    deb http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
    deb http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
    deb http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
    deb http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
    deb http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
    
    • 清华大学镜像
    deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal main restricted universe multiverse
    deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-updates main restricted universe multiverse
    deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-backports main restricted universe multiverse
    deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-security main restricted universe multiverse
    
    • 中科大镜像
    deb https://mirrors.ustc.edu.cn/ubuntu/ focal main restricted universe multiverse
    deb https://mirrors.ustc.edu.cn/ubuntu/ focal-updates main restricted universe multiverse
    deb https://mirrors.ustc.edu.cn/ubuntu/ focal-backports main restricted universe multiverse
    deb https://mirrors.ustc.edu.cn/ubuntu/ focal-security main restricted universe multiverse
    

    注意focal 是 Ubuntu 20.04 的代号如果你使用的是其他版本请将 focal 替换为对应版本的代号

    步骤 4更新软件包列表

    保存并退出编辑器后运行以下命令更新软件包列表

    sudo apt update
    

    12. 总结

    通过切换国内镜像源你可以在很多常用的包管理工具中加速依赖的下载和安装过程省下不少时间以下是常见工具切换国内源的方法总结

    • npm淘宝镜像npm config set registry https://registry.npmmirror.com
    • Yarn淘宝镜像yarn config set registry https://registry.npmmirror.com
    • pip豆瓣源pip install package-name -i https://pypi.douban.com/simple
    • Conda清华源conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
    • Composer阿里云源composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
    • RubyGems淘宝镜像gem sources --add https://gems.ruby-china.com/ --remove https://rubygems.org/
    • Maven阿里云源修改 ~/.m2/settings.xml
    • Gradle阿里云源修改 build.gradle
    • Node.js淘宝镜像nvm install node --registry=https://registry.npmmirror.com
    • Docker配置国内镜像加速容器镜像下载
    • apt使用阿里云清华大学或中科大镜像加速软件包下载

    小小吐槽——CSDN 为什么要强制登录

    在开发过程中大家应该都有过这样的经历你在 CSDN 上找到了一段有用的代码然而当你准备复制时结果 CSDN 突然弹出一个登录框让你必须登录才能复制有些情况下甚至还会提示你充会员才能无障碍地复制

    这种体验真的让人心累作为一个开发者最需要的是高效地获取信息而不是被迫跳过这些繁琐的登录步骤CSDN 的这种行为让人感觉像是被卡脖子逼迫你为基础的功能付费

    这就像你走进了一家图书馆看到一本书的精彩片段正准备抄下笔记却被管理员拦住想抄先交钱 这种强行限制内容获取的做法似乎违背了互联网的初衷——信息的自由传播

    话是说回来在如今信息发达的时代GitHubStack Overflow 这样的平台提供丰富的开源资源比起被限制的 CSDN更值得推荐


    通过切换到国内镜像源你可以显著加快下载依赖的速度节省时间与精力而至于某些平台的强制登录和会员制度真的应该反思一下知识的自由传播难道不应该是互联网的初心吗