Python 环境管理工具 Miniconda 的安装、配置与使用
Miniconda 是一个轻量级的 Python 环境管理工具,它是 Anaconda 的简化版本。与 Anaconda 不同,Miniconda 不预装大量科学计算库,而是仅包含 conda 包管理工具和 Python 基础环境,用户可以根据需要自行安装所需依赖。这使得它更灵活且节省存储空间。
1. 安装 Miniconda
官方安装参考:https://www.anaconda.com/docs/getting-started/miniconda/install
国内用户可以通过清华软件镜像站查找 latest 版本并下载安装包:https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/
Windows 用户下载安装包后,右键选择管理员用户打开进行安装即可。
MacOS 用户可以参考以下命令下载安装:
Linux 用户可以参考以下命令下载安装:
安装完成后,可以通过 conda info
命令查看安装信息。
2. 配置 Miniconda
执行 conda info
命令,可以看到基本的配置信息。
2.1 修改 conda 默认 envs_dirs 和 pkgs_dirs
默认情况下,conda 的首选 envs_dirs 是 ~/.conda/envs
目录,如果磁盘空间不够用,可以修改至其他磁盘目录下。示例:
2.2 设置 conda 国内镜像源
conda 官方软件仓库源在国内无法访问,可以配置为清华镜像源。
当然,也可以直接编辑 ~/.condarc
文件,在其中添加配置参考如下:
Miniconda 自定义 channels 国内镜像源后仍然报错无效的问题及解决:
如果在 ~/.condarc
文件中已配置了 channels
国内镜像源,通过 conda info
仍然看到 channels
中包含 repo.anaconda.com
相关内容,并且在创建环境时仍然会因为需要请求它们而报错:
CondaHTTPError: HTTP 000 CONNECTION FAILED for url https://repo.anaconda.com/pkgs/main/win-64/repodata.json.bz2
Elapsed: -An HTTP error occurred when trying to retrieve this URL.
HTTP errors are often intermittent, and a simple retry will get you on your way.If your current network has https://www.anaconda.com blocked, please file a support request with your network engineering team.
SSLError(MaxRetryError(‘HTTPSConnectionPool(host=‘repo.anaconda.com’, port=443): Max retries exceeded with url: /pkgs/main/win-64/repodata.json.bz2 (Caused by SSLError(SSLError(“bad handshake: Error([(‘SSL routines’, ‘ssl3_get_server_certificate’, ‘certificate verify failed’)])”)))’))
这是因为在 Miniconda 安装目录下也有一个 .condarc
文件,并且里面默认配置了官方 channels
,如 MacOS 下路径为:~/miniconda3/.condarc
。将其内容删除或注释掉即可。我在这个问题上查找分析了许久,通过翻阅官方文档才搞明白。
3. Miniconda 用法及常用命令
基本用法示例:
常用命令参考:
conda create -n <env-name>
创建一个名为<env-name>
的环境conda create -n myenv python=3.11
创建一个名为myenv
的环境,并安装python 3.11
版本
conda activate <env-name>
激活名为<env-name>
的环境conda deactivate
退出当前环境conda list
查看当前环境中的包conda search <package-name>
搜索名为<package-name>
的包conda install <package-name>
安装名为<package-name>
的包conda install --name myenv matplotlib
在名为 myenv 的环境中安装 matplotlib 包
conda remove <package-name>
删除名为<package-name>
的包conda update <package-name>
更新名为<package-name>
的包conda env list
查看所有环境conda env remove -n <env-name>
删除名为<env-name>
的环境-
缓存清理
conda clean --all
清理所有缓存conda clean --index-cache
清理索引缓存conda clean --packages
清理无用的包缓存conda clean --tarballs
删除 tarballs 缓存
4. 相关参考
- https://mirrors.tuna.tsinghua.edu.cn/help/anaconda/
- https://www.anaconda.com/docs/getting-started/miniconda/install
- https://www.anaconda.com/docs/psm/cloud/channels
- https://docs.conda.org.cn/projects/conda/en/stable/user-guide/configuration/mirroring.html