conda与pip的镜像源与代理设置

conda与pip的镜像源与代理设置

  • 一、前言
  • 二、conda镜像源设置
    • 2.1conda默认镜像源介绍
    • 2.2通过终端设置镜像源
    • 2.3通过配置文件设置镜像源
  • 三、pip镜像源设置
    • 3.1pip默认镜像源介绍
    • 3.2通过终端临时设置镜像源
    • 3.3通过配置文件设置一个或多个镜像源
  • 四、conda代理设置
    • 4.1通过终端设置代理
    • 4.2通过配置文件设置代理
    • 4.3在系统环境变量中设置代理
  • 五、pip代理设置
    • 5.1通过终端临时设置代理
    • 5.2通过配置文件设置代理
    • 5.3在系统环境变量中设置代理
  • 六、不同虚拟环境中的pip设置
    • 6.1在虚拟环境文件夹下创建pip配置文件
    • 6.2在虚拟环境的激活脚本中设置配置
  • 参考文档

一、前言

使用conda、pip命令行工具安装一些需要的工具包或函数库时,由于默认的镜像源连接速度很慢,影响开发效率,或者由于计算机处于局域网,必须通过规定的IP地址转接才能访问互联网,因此本文对windows系统下如何设置镜像源及代理进行介绍。
系统环境如下:
windows:win10专业版
conda:4.9.2
pip:24.0

二、conda镜像源设置

conda的镜像源可通过终端和配置文件进行设置,都是设置后永久生效

2.1conda默认镜像源介绍

conda默认的镜像源通常指 Anaconda 官方提供的软件包仓库地址,有三个,地址如下:

https://repo.anaconda.com/pkgs/main
https://repo.anaconda.com/pkgs/r
https://repo.anaconda.com/pkgs/msys2

main 频道:主要包含由Anaconda提供和维护的广泛使用的开源软件包。
r 频道:专门用于 R 语言及其相关工具和包。
msys2 频道:包含 Windows 上使用的工具和库。
如果未进行任何镜像源设置,那么conda将使用默认镜像源,按照顺序依次从上述地址查找软件包。

2.2通过终端设置镜像源

以管理员身份打开conda终端,然后以清华镜像源为例,输入以下命令添加镜像源:

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/

注意使用命令添加的镜像源,类似于栈结构的后进先出,最后添加的优先级最高,即如果输入上述命令,那么main频道的优先级最高,conda将优先从main频道查找软件包。
清华镜像源的三个频道介绍如下:
main :是 Anaconda 的主要官方渠道,包含最新稳定版软件包,推荐使用。
free :是旧的官方免费渠道,包括了在 Anaconda 5.0 之前发布的所有软件包,已经停止更新,仅用于兼容性需求。
cloud/conda-forge: 是社区维护的渠道,提供了广泛的包集合和最新的软件版本,更新频繁。
与清华的conda-forge频道相对应,conda也有一个社区维护的频道,地址为:

https://conda.anaconda.org/conda-forge

添加镜像源后,可使用如下命令进行查看:

conda config --show channels

显示出的镜像源的从上到下排列顺序即为优先级顺序
想要移除某个镜像源,可使用如下命令:

conda config --remove channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge

如果想要移除添加的全部镜像源,可使用如下命令,移除后conda将使用默认源:

conda config --remove-key channels

2.3通过配置文件设置镜像源

conda配置文件名为.condarc,位于C:\Users\自己的用户名文件夹。以添加清华源为例,使用文本编辑器打开文件后,在文件中添加如下内容:

channels:
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge
  - defaults
show_channel_urls: true
report_errors: false

文件中在channels中定义了三个清华源和一个defaults,defaults代表默认源,当安装软件包时,conda会首先依次从三个清华源中查找,如果查找不到则会到默认源中查找。
show_channel_urls:用于控制 conda 是否在输出中显示包的下载 URL,这对于调试和了解包从哪个频道下载很有用。
report_errors:控制是否在 conda 出现错误时,将错误信息报告给 conda 开发团队。这有助于开发团队了解用户遇到的问题并改进 conda。

三、pip镜像源设置

pip的镜像源可通过终端和配置文件设置,但通过终端只能进行临时性设置,配置文件的设置为永久设置,这一点与conda有所不同。

3.1pip默认镜像源介绍

pip安装软件包时,默认的镜像源是 Python Package Index (PyPI),其 URL 为 https://pypi.org/simple。当未对镜像源进行设置时,pip会使用默认镜像源。
与conda不同,pip默认的镜像源只有上述一个。

3.2通过终端临时设置镜像源

pip可以通过终端以命令的形式设置镜像源,但设置的镜像源的命令与安装软件包的命令捆绑在一起,即安装一次软件包设置一次镜像源在当前镜像源查找不到软件包时不会去默认镜像源继续查找,以安装numpy和使用清华镜像源为例,命令如下:

pip install numpy -i https://pypi.tuna.tsinghua.edu.cn/simple

也可通过终端设置pip下载软件包进行网络连接的超时时间,默认超时时间是15s,设置超时时间为30s的命令如下:

pip install numpy -i https://pypi.tuna.tsinghua.edu.cn/simple --timeout 30
pip install numpy -i https://pypi.tuna.tsinghua.edu.cn/simple --default-timeout 30

上述两条命令是等效的,timeout和default-timeout都可设置超时时间。
注意超时时间是针对网络连接而言,包括通过代理服务器访问镜像源并下载软件包的整个过程,不单作用于镜像源,也作用于代理。

3.3通过配置文件设置一个或多个镜像源

pip默认配置文件名为pip.ini,位于%APPDATA%\pip,如果找不到该文件夹或文件,可以手动创建。打开文件后,添加如下内容:

[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple
extra-index-url =
    https://pypi.org/simple
    https://pypi.mirrors.ustc.edu.cn/simple
timeout = 30

上述内容定义了三个镜像源和超时时间,三个源的优先级即为从上到下的排列顺序,pip下载软件包时会依次从三个源进行查找。
保存配置文件后,可使用以下命令来验证 pip 的配置:

pip config list

四、conda代理设置

conda的代理可通过终端和配置文件进行设置,也还可在系统的环境变量中设置代理,conda在自身没有设置代理的情况下会读取环境变量中的代理设置,但环境变量的代理设置可能会影响到其他程序。如果同时设置了自身的代理和环境变量的代理,conda会优先使用自身代理

4.1通过终端设置代理

设置http和https代理命令如下:

conda config --set proxy_servers.http http://0.0.0.0:00000
conda config --set proxy_servers.https https://0.0.0.0:00000

设置完成后,可通过如下命令进行查看:

conda config --show proxy_servers

也可使用如下命令删除代理:

conda config --remove-key proxy_servers.http
conda config --remove-key proxy_servers.https

4.2通过配置文件设置代理

打开配置文件,添加如下内容:

proxy_servers:
  http: http://0.0.0.0:00000
  https: https://0.0.0.0:00000

4.3在系统环境变量中设置代理

在系统环境变量中设置代理的方式有两种,分别为使用命令行终端(cmd)和通过界面设置。
方式一:使用命令行终端(暂时性设置)
打开cmd,然后输入以下命令:

set HTTP_PROXY=http://0.0.0.0:00000
set HTTPS_PROXY=https://0.0.0.0:00000

这种方式设置的代理仅在当前命令行终端有效,关闭命令行终端后设置会丢失。
方式二:界面设置(永久设置)
1、打开 我的电脑,在空白处右键,点击属性;
2、点击左侧的高级系统设置;
3、在 系统属性 窗口中,点击 环境变量;
4、在 环境变量 窗口中,选择在用户变量或系统变量执行下述步骤即可:
5、
点击 新建 按钮。
在 变量名 中输入 HTTP_PROXY。
在 变量值 中输入 http://0.0.0.0:00000。
点击 确定。
6、重复步骤5添加 HTTPS_PROXY 变量。
设置好后如下图:
在这里插入图片描述
设置完成后打开cmd,输入以下命令查看环境变量设置:

echo %HTTP_PROXY%
echo %HTTPS_PROXY%

五、pip代理设置

pip代理设置与镜像源设置类似,通过终端只能进行临时性设置,而通过配置文件可实现永久设置,此外与conda一样,也可通过系统的环境变量设置代理,pip自身的代理优先级同样高于环境变量的代理

5.1通过终端临时设置代理

以下载安装numpy为例,设置代理命令如下:

pip install numpy --proxy http://0.0.0.0:00000

5.2通过配置文件设置代理

打开配置文件,添加以下内容:

[global]
proxy = http://0.0.0.0:00000

保存配置文件后,可通过以下命令来验证 pip 的配置:

pip config list

5.3在系统环境变量中设置代理

参照4.3小节。

六、不同虚拟环境中的pip设置

上述pip的配置文件是全局配置文件,会作用于所有由conda创建的虚拟环境中的pip,如果需要对每个虚拟环境中的pip进行一些特定配置,方法如下:

6.1在虚拟环境文件夹下创建pip配置文件

如虚拟环境名为myenv,则到conda的安装目录\envs\myenv目录下,创建pip.ini文件,按照前文所述对pip进行配置,那么在该虚拟环境下使用pip就会加载此配置文件。

6.2在虚拟环境的激活脚本中设置配置

1、找到虚拟环境的激活脚本目录:conda的安装目录\envs\myenv\etc\conda\activate.d
如果activate.d文件夹不存在,可进行创建。
2、创建或编辑一个名为 pip_config.bat 的脚本文件,内容如下:

set PIP_CONFIG_FILE=%CONDA_PREFIX%\pip.conf

3、找到虚拟环境的deactivate 脚本目录:conda的安装目录\envs\myenv\etc\conda\deactivate.d
如果deactivate.d文件夹不存在,可进行创建。
4、创建或编辑一个名为 de_pip_config.bat 的脚本文件,重置环境变量,内容如下:

set PIP_CONFIG_FILE=

5、然后在虚拟环境的根目录中创建 pip.conf 文件,按照前文所述对pip进行配置。

参考文档

更换pip源到国内镜像

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/666091.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

SpringBoot 基于jedis实现Codis高可用访问

codis与redis的关系 codis与redis之间关系就是codis是基于多个redis实例做了一层路由层来进行数据的路由,每个redis实例承担一定的数据分片。 codis作为开源产品,可以很直观的展示出codis运维成本低,扩容平滑最核心的优势. 其中&#xff0…

一键安装 HaloDB 之 Ansible for Halo

↑ 关注“少安事务所”公众号,欢迎⭐收藏,不错过精彩内容~ 前倾回顾 前面介绍了“光环”数据库的基本情况和安装办法。 哈喽,国产数据库!Halo DB! 三步走,Halo DB 安装指引 以及 HaloDB 的 Oracle 和 MySQL 兼容模式: …

SAPUI5基础知识3 - 引导过程(Bootstrap)

1. 背景 在上一篇博客中,我们已经建立出了第一个SAPUI5项目,接下来,我们将为这个项目添加引导过程。 在动手练习之前,让我们先解释一下什么引导过程。 1.1 什么是引导过程? 在计算机科学中,引导过程也称…

云原生架构相关技术_1.容器技术

1.容器技术的背景与价值 容器作为标准化软件单元,它将应用及其所有依赖项打包,使应用不再受环境限制,在不同计算环境间快速、可靠地运行。容器部署模式与其他模式的比较如下图1所示。 图1 传统、虚拟化、容器部署模式比较 Docker容器基于操作…

小型企业网络组网与配置仿真实验

实验要求如下: 我这里以学号46为例 一、IP 地址规划表 (一)主类网络 (二)子网划分 需要自己计算有效ip范围 在C类主网络192.168.46.0/24中,我们需要先了解这个网络的子网掩码为255.255.255.0,其二进制…

Unity2D横版摄像机跟随

在Unity2D横版游戏中,摄像机跟随是一个非常重要的功能。一个流畅的摄像机跟随系统可以让玩家更好地沉浸在游戏世界中。本文将介绍如何在Unity中实现2D横版摄像机跟随,并分享一些优化技巧。 一、准备工作 在开始实现摄像机跟随之前,请确保您…

润色图表:添加马克点与商务风格调整

新书上架~👇全国包邮奥~ python实用小工具开发教程http://pythontoolsteach.com/3 欢迎关注我👆,收藏下次不迷路┗|`O′|┛ 嗷~~ 目录 一、引言 二、添加马克点 1. 马克点的概念与作用 2. 马克点的实现方法 3. 代码示例 三、…

香港服务器无法访问是什么情况?

香港服务器无法访问是什么情况?简单来说,这意味着香港服务器没有响应请求,客户端无法访问。此错误可能由于多种原因而发生,包括网络连接问题、服务器停机、防火墙限制和 DNS 错误。当发生服务器无法访问错误时,它会影响您网站的性…

MySQL:MySQL执行一条SQL查询语句的执行过程

当多个客户端同时连接到MySQL,用SQL语句去增删改查数据,针对查询场景,MySQL要保证尽可能快地返回客户端结果。 了解了这些需求场景,我们可能会对MySQL进行如下设计: 其中,连接器管理客户端的连接,负责管理连接、认证鉴权等;查询缓存则是为了加速查询,命中则直接返回结…

压测工具Jmeter的使用

一、安装 下载地址: 国外地址:jmeter.apache.org(下载会很慢,建议使用国内地址) 国内地址:apache-jmeter-binaries安装包下载_开源镜像站-阿里云 下载好进入bin文件下,双击jmeter.bat 打开…

怎么制作能下载文件的二维码?扫码实现文件下载的方法

现在很多人为了能够方便其他人查看文件,经常会将文件生成二维码图片后,将二维码分享给其他人扫码在手机上查看,这种方式既能够节省成本,又可以实现多人同时获取内容,有利于文件的快速分享。 在制作文件二维码的时候&a…

【算法】过桥

✨题目链接: 过桥 ✨题目描述 ✨输入描述: 第一行一个数n(2≤n≤2000) 接下来一行n个数a[i](1≤|a[i]|≤2000)表示浮块上的数字 ✨输出描述: 输出一行,表示对应的答案 ✨示例1 📍输入 4 2 2 -1 2 📍输出 2 📍说明 1…

【Unity Shader入门精要 第12章】屏幕后处理效果(二)

1. 卷积 在图像处理中,卷积操作就是使用一个卷积核对一张图像中的每个像素做一系列的操作。 卷积核通常是一个四方形网格结构,如2x2、3x3的方形区域,该区域内每个方格都有一个权重值。 当对图像中的某个像素进行卷积操作时,将卷…

ios:文本框默认的copy、past改成中文复制粘贴

问题 ios 开发&#xff0c;对于输入框的一些默认文案展示&#xff0c;如复制粘贴是英文的&#xff0c;那么如何改为中文的呢 解决 按照路径找到这个文件 ios/项目/Info.plist&#xff0c;增加 <key>CFBundleAllowMixedLocalizations</key> <true/> <…

《QT实用小工具·六十九》基于QT开发的五子棋AI游戏

1、概述 源码放在文章末尾 该项目实现了五子棋对战AI&#xff0c;可以享受和AI下棋的快乐&#xff0c;项目实现思路如下&#xff1a; 博弈树 ●Alpha-Beta剪枝(性能提高较大) ●启发式搜索(性能提高较大) ●落子区域限制(性能提高较大) ●Zobrist哈希(性能小幅提升) ●Qt…

香港云服务器好还是国内的好?

香港云服务器与国内云服务器各有其优点和缺点&#xff0c;选择哪种类型的云服务器主要取决于业务需求、用户群体、网络需求以及成本考虑。以下是对两者进行详细比较的内容。 首先&#xff0c;从网络速度和稳定性来看&#xff0c;香港云服务器具有独特的优势。由于香港是全球数据…

vue-Dialog 自定义title样式

展示结果 vue代码 <el-dialog :title"title" :visible.sync"classifyOpen" width"500px" :showClose"false" class"aboutDialog"> <el-form :model"classifyForm" :rules"classifyRules">…

移动电商服务器单点部署

知识图谱 任务一&#xff1a;Web服务器部署 1.知识结构 2.WEB服务器的介绍 Web服务器一般指网站服务器&#xff0c;是指驻留于因特网上提供某种特定类型计算机的程序&#xff0c;Web服务器可以向浏览器等Web客户端提供文档&#xff0c;也可以放置网站文件&#xff0c;让全世界…

红外超声波雷达测距(water)

文章目录 一 RS-232二 RS485三 Modbus四 stm32多路超声波测距4.1 设计方案4.2 代码 参考资料总结 实验要求 一. 采用stm32F103和HC-SR04超声波模块&#xff0c; 使用标准库或HAL库 定时器中断&#xff0c;完成1或2路的超声波障碍物测距功能。 1&#xff09;测试数据包含噪声&am…

Rasa.3X中使用lookup实现对实体的抽取

rasa3.6的DIETClassifier实体提取器不准确&#xff0c;使用RegexEntityExtractor的实体提取器替换。在实战过程解决以下两个问题&#xff1a; 1、RegexEntityExtractor实体提取器的应用 首先在domain.yml中明确对应的实体以及意图&#xff1a; version: "3.0" ent…