首页 > 解决方案 > 如何在不设置通道优先级的情况下强制使用默认 conda 通道进行软件包安装

问题描述

我有一个.condarc这样的:

channels:
  - conda-forge
  - http://conda.anaconda.org/gurobi
  - defaults

我的 conda 环境有一个设置脚本,如下所示:

conda create -y -n myenv python=3.7
source activate myenv

conda install -y keras
conda install -y matplotlib

...

conda deactivate

我刚刚意识到这个脚本像以前一样停止了工作(这意味着安装脚本仍然可以正常运行,但环境的行为不像以前那样)。我发现这可能是由于我的修改.condarc,因为在删除前两个频道条目(仅留下- defaults)后,它再次起作用。

我知道我可以设置频道优先级。我也知道我可以使用-C选项(例如conda install -C conda-forge)指定安装频道。但是我如何在conda install不改变优先级的情况下指定使用默认通道呢?本质上,我想要这样的东西,但它不起作用:

conda install -C defaults -y keras

我想要这样,以便我的脚本是独立的,具有可重现的行为,并且不必弄乱它的环境(例如,通过从脚本内部设置优先级)。

标签: pythonconda

解决方案


推荐阅读