【Python】conda镜像配置,.condarc文件详解,channel镜像

news2024/11/23 3:03:43

1. conda 环境

安装miniconda即可,Miniconda 安装包可以到 http://mirrors.aliyun.com/anaconda/miniconda/ 下载。

.condarc是conda 应用程序的配置文件,在用户家目录(windows:C:\users\username\),用于管理镜像源。如果不存在,则打开conda的,执行一下:

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

在这里插入图片描述
在这里插入图片描述

2. conda包管理目录

anaconda安装的位置/pkgs该目录是用户指定update或install时由 Conda 下载并提取的包,都是解压后的包,可以在 conda 环境中通过link关联。

anaconda安装的位置\envs\虚拟环境\Lib\site-packages 则是启用虚拟环境后import时导入包的地方。它们来自anaconda安装的位置/pkgs。

anaconda安装的位置/Lib/site-packages 是base环境的路径。

3. 配置镜像源

3.1 通过命令配置和删除

# 查看当前conda配置
conda config --show channels
# 增加channel
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/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud//pytorch/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
 
#设置搜索是显示通道地址
conda config --set show_channel_urls yes


# Python创建虚拟环境
conda create -n your_env_name python=x.x

# 激活或者切换虚拟环境
Windows: activate your_env_name
Linux:  source activate your_env_nam

# 对虚拟环境中安装额外的包
conda install -n your_env_name [package]

# 关闭虚拟环境(即从当前环境退出返回使用PATH环境中的默认python版本)
Windows: deactivate env_name 或者`activate root`切回root环境
Linux:source deactivate 

# 删除虚拟环境
conda remove -n your_env_name --all

# 删除环境钟的某个包
conda remove --name $your_env_name  $package_name 

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/会直接加到.condarc文件的channels下面,成为一个独立的channel:
在这里插入图片描述

3.2 通过修改文件添加(推荐)

直接修改.condarc文件是最方便的。

大家常搜到的配置文件如下:
阿里源(来自阿里云官方镜像配置指导):

channels:
  - defaults
show_channel_urls: true
default_channels:
  - http://mirrors.aliyun.com/anaconda/pkgs/main
  - http://mirrors.aliyun.com/anaconda/pkgs/r
  - http://mirrors.aliyun.com/anaconda/pkgs/msys2
custom_channels:
  conda-forge: http://mirrors.aliyun.com/anaconda/cloud
  msys2: http://mirrors.aliyun.com/anaconda/cloud
  bioconda: http://mirrors.aliyun.com/anaconda/cloud
  menpo: http://mirrors.aliyun.com/anaconda/cloud
  pytorch: http://mirrors.aliyun.com/anaconda/cloud
  simpleitk: http://mirrors.aliyun.com/anaconda/cloud

清华源:

channels:
  - defaults
show_channel_urls: true
default_channels:
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2
custom_channels:
  conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  msys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  bioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  menpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud

配置完后如果不生效可清空conda缓存再试试:

 conda clean -i 

4. .conda文件详解

conda 配置文件.condarc是一个可选的运行时配置文件,允许用户配置 conda 的各个方面,例如在哪些channel中搜索包、代理设置和环境目录。本文仅讨论和channel相关的部分。

4.1 channels

channels下面配置的就是可访问的chennel。
修改.condarc文件的channels会覆盖 conda 搜索的默认值,导致 conda 仅按给定顺序搜索此处列出的频道。

频道有url和非url之分:

  • url:自定义的搜索地址,如前面的https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
  • 非url: Anaconda.org 用户或组织名称,如conda-forge对应着https://conda.anaconda.org中的conda-forge。

如果.condarc文件如下:

channels:
  - conda-forge
  - http://Code_LT
  - defaults

则conda搜索pandas包的时候就会按conda-forge->http://Code_LT->defaults的顺序搜索。

4.2 channels分类

conda把channel分为两类

  • 默认channel(default channels)
  • 社区channel(community channels)

如果不修改.condarc文件,conda会默认从这两类channel中搜索需要的包:

  • 默认channel:对应repo.anaconda.com仓,硬编码写死了对应如下三个仓库(:
https://repo.anaconda.com/pkgs/main
https://repo.anaconda.com/pkgs/r
https://repo.anaconda.com/pkgs/msys2
  • 社区channel:对应conda.anaconda.org仓,即https://conda.anaconda.org

4.3 channels镜像修改

.condarc文件除了把url硬编码进chennels下面,还可以把非url的Anaconda.org 用户或组织名称映射到指定的仓。

根据channels分类可知道,要修改的化就涉及默认channel和社区channel的修改。

利用default_channels修改默认channel

如前面讲的阿里镜像中的:

default_channels:
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2

则把原有的defaults对应的仓换成了上面的阿里仓。

利用channel_alias 修改社区channel

所有社区频道都会被修改,这个用得比较少,如:

channel_alias: https://my-mirror.com

则配置conda-forge频道后,conda不会再去https://conda.anaconda.org搜。

利用custom_channels修改指定社区channel

custom_channels:
    conda-forge: https://Code_LT/conda-forge

这样写进.condarc文件中后,配置conda-forge就不会再去https://conda.anaconda.org搜,而是到https://Code_LT/conda-forge搜,其他社区频道不变。

这样,清华源和阿里源的配置就弄明白了。

4.4 为环境配置单独的.condarc文件

要为单个环境选择通道,请将.condarc 文件放入该环境的根目录中(或 使用conda config 时使​​用--env选项)。

示例:如果您已在主目录中安装了带有 Python 3 的 Miniconda,并且环境名为“flowers”,则路径可能为:

~/miniconda3/envs/flowers/.condarc

5. 配置文件冲突解决

conda会在如下目录中搜索.condarc文件

if on_win:
    SEARCH_PATH = (
        "C:/ProgramData/conda/.condarc",
        "C:/ProgramData/conda/condarc",
        "C:/ProgramData/conda/condarc.d",
    )
else:
    SEARCH_PATH = (
        "/etc/conda/.condarc",
        "/etc/conda/condarc",
        "/etc/conda/condarc.d/",
        "/var/lib/conda/.condarc",
        "/var/lib/conda/condarc",
        "/var/lib/conda/condarc.d/",
    )

SEARCH_PATH += (
    "$CONDA_ROOT/.condarc",
    "$CONDA_ROOT/condarc",
    "$CONDA_ROOT/condarc.d/",
    "$XDG_CONFIG_HOME/conda/.condarc",
    "$XDG_CONFIG_HOME/conda/condarc",
    "$XDG_CONFIG_HOME/conda/condarc.d/",
    "~/.config/conda/.condarc",
    "~/.config/conda/condarc",
    "~/.config/conda/condarc.d/",
    "~/.conda/.condarc",
    "~/.conda/condarc",
    "~/.conda/condarc.d/",
    "~/.condarc",
    "$CONDA_PREFIX/.condarc",
    "$CONDA_PREFIX/condarc",
    "$CONDA_PREFIX/condarc.d/",
    "$CONDARC",
)

多个文件之间可能会发生冲突,按照如下原则解决冲突(具体不展开了,可自行查看官网资料):

  • Lists - merge
  • Dictionaries - merge
  • Primitive - clobber

冲突解决的优先级:
在这里插入图片描述

参考:

Anaconda安装的包所在的位置
Anaconda的包路径,终于讲清楚了
官网:安装包list和位置相关
【conda】配置国内镜像源
官网:conda目录结构介绍
官网:.condarc文件官方解释
官网:channel镜像的官方说明
阿里云官方镜像配置指导
[python中的PYTHONHASHSEED (https://blog.csdn.net/Changxing_J/article/details/122451319)

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Peter算法小课堂—简单建模(2)

太戈编程736题 题目描述: 你是一只汪星人,地球毁灭后你回到了汪星,这里每天有n个小时,你需要为自己选择正好连续的m小时作为每天睡眠的时间。从凌晨开始,第i小时内的睡眠质量为xi,请问经过选择后&#xf…

WTF ‘Questions‘

WTF ‘Tech Team Lead’ As a Tech Team Lead, your role is to oversee the technical aspects of a project or team, and to provide guidance, support, and leadership to your team members. Here are some key responsibilities and aspects of the role: Leadership …

vite(一)——基本了解和依赖预构建

文章目录 一、什么是构建工具?1.为什么使用构建工具?2.构建工具的作用?3.构建工具怎么用? 二、经典面试题:webpack和vite的区别1.编译方式不同2.基础概念不同3.开发效率不同4.扩展性不同5.应用场景不同6.总结&#xff…

算法:最小生成树

文章目录 生成树Kruskal算法Prim算法 本篇总结的是最小生成树算法 生成树 连通图中的每一棵生成树,都是原图的一个极大无环子图,即:从其中删去任何一条边,生成树就不在连通;反之,在其中引入任何一条新边&…

浅谈USD格式

USD是什么?如何发展起来的? USD(Universal Scene Description)是一种开放的、可扩展的文件格式和数据交换标准,用于描述和交换三维计算机图形场景和资产的数据。它最初由皮克斯动画工作室开发,并于2012年公…

java答题小程序源码带后台

尊敬的客户大家好!接下来由我来介绍一下晟讯答题小程序,晟讯答题小程序是一款专业性的答题小程序,技术方式为前端原生开发的小程序,服务端为java程序,且拥有独立知识产权,软著登字2019SR0657453。其功能集个…

gin使用自签名SSL证书与自签名证书不受信任方法解决

文章目录 1. X.509 V3证书介绍2、使用openssl生成自签名证书和解决不受信任问题2.1、生成根证书2.2、为域名生成证书申请文件2.3、为域名创建证书的扩展描述文件2.4、为域名创建证书 3、Go应用中使用自签名证书3.1、gin框架调用实现3.2、运行效果 4、使用java的bouncycastle生成…

ACM32如何保护算法、协议不被破解或者修改

ACM32具有以下几种功能,可以保护算法、协议不被破解或者修改。 1.存储保护  RDP读保护  WRP写保护  PCROP 专有代码读保护  MPU存储区域权限控制  Secure User Memory存储区域加密 2.密码学算法引擎  AES  HASH  随机数生成  …

DevEco Studio 项目启动工程和Device Manage

DevEco Studio 项目启动工程和Device Manage 鸿蒙(HarmonyOS) 一、操作环境 操作系统: Windows 10 专业版 IDE:DevEco Studio 3.1 SDK:HarmonyOS 3.1 二、创建虚拟机(Device Manage) 鸿蒙IDE创建虚拟设备入口有2个地方&…

C++:this指针

目录 前言 成员函数返回this指向的对象本身时,为什是返回引用类型? 成员函数返回this对象本身时,内部通常会通过拷贝构造函数来创建一个临时对象? 总结 前言 c通过提供特殊的对象指针,this指针 指向被调用的成员函…

模块二——滑动窗口:438.找到字符串中所有字母异位词

文章目录 题目描述算法原理滑动窗口哈希表 代码实现 题目描述 题目链接:438.找到字符串中所有字母异位词 算法原理 滑动窗口哈希表 因为字符串p的异位词的⻓度⼀定与字符串p 的⻓度相同,所以我们可以在字符串s 中构造⼀个⻓度为与字符串p的⻓度相同…

每日好题:原来你也玩三国杀(DP动态规划)

I - 原来你也玩三国杀 Description 小 Q 最近听说 “很多” acmer 都爱上了一款游戏《三国杀》。因为小 Q 是一个初学者,所以想自己先偷偷学习一下,然后惊艳所有人。但又因为小 Q 不屑于使用一般的武将,因为他觉得唯有操作型武将才能显得自…

虾皮选品网:如何使用虾皮选品数据软件提升您的选品策略

在虾皮(Shopee)平台上进行选品时,了解市场趋势、竞争程度和产品潜力是非常重要的。为了帮助卖家更好地分析虾皮市场,并为选品和运营策略提供有力支持,有一些数据软件和工具可以派上用场。本文将介绍一些建议使用的虾皮…

Kafka-集群架构设计

Kafka的Zookeeper元数据梳理 zookeeper整体数据 Kafka将状态信息保存在Zookeeper中,这些状态信息记录了每个Kafka的Broker服务与另外的Broker服务 有什么不同。通过这些差异化的功能,共同体现出集群化的业务能力。这些数据,需要在集群中各个…

DS二分查找_搜索二维矩阵(纯二分查找写法)

本题我写了两个方法,一个是的时间复杂度,就是本文章一个mn时间复杂度,这个比较简单,如果不会二分法可以看这篇文章 Description 使用二分查找法来判断m*n矩阵matrix中是否存在目标值target。 该矩阵有以下特性: 1. 每行中的整数…

智物发布MT6877平台无线AR智能眼镜参考设计,推动下一代无线AR发展

随着增强现实(AR)技术的不断发展,有线AR眼镜在连接和使用方面存在一些限制。为了解决这些问题,无线AR智能眼镜的推出势在必行。 新一代无线AR智能眼镜采用了天玑900(MT6877)平台作为参考设计,搭载了2.4GHz的八核处理器…

【每日一题】用邮票贴满网格图

文章目录 Tag题目来源题目解读解题思路方法一:二维前缀和二维差分 写在最后 Tag 【二维前缀和】【二维差分】【矩阵】【2023-12-14】 题目来源 2132. 用邮票贴满网格图 题目解读 在 01 矩阵中,判断是否可以用给定尺寸的邮票将所有 0 位置都覆盖住&…

飞轮储能一次调频并网三机九节点系统,虚拟惯性和下垂控制,也可加入虚拟同步机VSG控制,飞轮储能容量可调,系统频率50Hz,离散模型

5MW飞轮储能一次调频并网三机九节点系统,虚拟惯性和下垂控制,也可加入虚拟同步机VSG控制,飞轮储能容量可调,系统频率50Hz,离散模型,仿真运行速度快。 飞轮储能变流器采用双PWM环设计,并网电压电…

CleanMyMac2024绿色免费激活码序列号

2024CleanMyMac免费mac下载版是一款简单实用的PC清洁管理工具,电脑刚装完系统的时候运行速度超级快,随着时间的推移,你会发现越来越慢,经常会反应卡顿,越来越多的垃圾文件占用了你的磁盘空间,各种过时的日志…

数据结构学习 12字母迷宫

dfs 回溯 剪枝 这个题和dfs有关,但是我之前没有接触过,我看了这一篇很好的文章,看完之后写的答案。 我觉得很好的总结: dfs模板 int check(参数) {if(满足条件)return 1;return 0; }void dfs(int step) {判断边界{相应操作}尝试…