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

news/2024/10/18 21:24:21/

condapip镜像源代理设置

一、前言

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

conda_7">二、conda镜像源设置

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

conda_9">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_70">三、pip镜像源设置

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

pip_72">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/simplehttps://pypi.mirrors.ustc.edu.cn/simple
timeout = 30

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

pip config list

conda_106">四、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:00000https: 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_163">五、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_186">六、不同虚拟环境中的pip设置

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

pip_188">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源到国内镜像


http://www.ppmy.cn/news/1465317.html

相关文章

智慧校园有哪些特征

随着科技的飞速进步,教育领域正经历着一场深刻的变革。智慧校园,作为这场变革的前沿代表,正在逐步重塑我们的教育理念和实践方式。它不仅仅是一个概念,而是一个集成了物联网、大数据、人工智能等先进技术的综合生态系统&#xff0…

虚拟现实环境下的远程教育和智能评估系统(七)

在后端代码的基础上,利用vue框架设计前端界面,至此,用户界面基本成型,后续添加其他进阶功能; 另,前后端交互相关: UsersVO.java package com.roncoo.education.user.feign.interfaces.vo;impor…

CVE-2024-27954 WordPress Automatic插件 SSRF与任意文件读取漏洞分析

WordPress Automatic 插件<3.92.1易受未经验证的任意文件下载和SSRF的攻击。位于downloader.php文件中&#xff0c;可能允许攻击者从网站访问任何文件。敏感数据&#xff0c;包括登录凭据和备份文件。此漏洞已在3.92.1版本中修补。 漏洞分析 定位文件 \wp-automatic\downl…

android配置flavor发布渠道包

因为umeng违反了Google Play的政策规定&#xff0c;所以需要对于gp版本排掉umeng相关的东西 1. build.gradle配置 signingConfigs {officialConfig {storeFile file(debug.keystore)storePassword ""keyAlias keyPassword ""}googlePlayRelease {storeFile…

软件和系统集成项目确认测试报告的费用需要多少?

确认测试报告 软件和系统集成项目确认测试报告的费用因多种因素而异&#xff0c;包括项目的规模、复杂度、测试范围、测试周期等。第三方软件测试机构价格区间一般是几千到几万不等&#xff0c;还有些会根据建设费用的2-5%进行收费。 一般来说&#xff0c;软件和系统集成项目…

电子阅览室能给孩子做什么

电子阅览室为孩子提供了很多活动和资源&#xff0c;可以为他们提供以下服务&#xff1a; 1. 提供电子书籍和儿童读物&#xff1a;电子阅览室通常提供大量的电子书籍和儿童读物&#xff0c;供孩子选择阅读。 2. 提供儿童学习资源&#xff1a;专久智能电子阅览室可以提供各种学习…

【C++】——string模拟实现

前言 string的模拟实现其实就是增删改查&#xff0c;只不过加入了类的概念。 为了防止与std里面的string冲突&#xff0c;所以这里统一用String。 目录 前言 一 初始化和销毁 1.1 构造函数 1.2 析构函数 二 迭代器实现 三 容量大小及操作 四 运算符重载 4.1 bool…

redis 如何获取所有key的信息及值,相关过期时间查询

简单粗暴获取所有key keys * 另一种方式&#xff1a; scan 0 切换数据库&#xff1a; select db Map类型 获取map的数量 hlen key 获取map所有的数据 hvals key 或者 hgetall key 整个哈希表的过期时间&#xff1a; EXPIRE your_hash_key 3600 # 设置哈希表 yo…