Ste*_*ell 24 python environment conda
我想在特定的conda环境中添加一个conda通道,但是当我使用时
conda config --add channels glotzer
Run Code Online (Sandbox Code Playgroud)
该频道现在可从我所有的conda环境中获得.除了从其他环境测试安装之外,该~/.condarc文件还具有以下内容:
channels:
- glotzer
- defaults
Run Code Online (Sandbox Code Playgroud)
我如何配置conda以便通道仅在特定环境中可用?
我确实在通道文档中发现,对于conda> = 4.1.0,将通道放在底部~/.condarc会阻止添加的通道覆盖核心包集.
默认情况下,conda现在优先于较低优先级通道的任何版本的优先级较高的通道中的包.因此,您现在可以安全地将频道放在频道列表的底部,以提供不在默认频道中的其他包,并且仍然确信这些频道不会覆盖核心包集.
我希望这可以防止大多数问题,除非在一个环境中你确实希望通过通道添加包来覆盖核心包.
Chr*_*ber 29
从conda 4.2开始,.condarc支持特定于环境的文件,您可以编写:
conda config --env --add channels glotzer
Run Code Online (Sandbox Code Playgroud)
将通道添加到活动环境的配置中.
[ 不确定是否--env在4.2中添加了标志.答案基于康达4.5.9 ]
目前,无法将通道添加到单个conda环境中.如果您不想将通道添加到全局~/.condarc文件,则应使用该选项从特定通道安装包:
conda install <some-package> -c glotzer
Run Code Online (Sandbox Code Playgroud)
您可以创建一个environment.yml包含conda环境规范的文件。完整的文档在这里,但基本设置如下:
name: EnvironmentName
channels:
- conda-forge
- glotzer
dependencies:
- pip:
- tensorflow
- pandas=0.22.*
Run Code Online (Sandbox Code Playgroud)
要使用环境,请键入
conda env create -f environment.yml
conda activate EnvironmentName
Run Code Online (Sandbox Code Playgroud)
要在environment.yml更改或更新包时更新环境,
conda env update -f environment.yml
conda activate EnvironmentName
Run Code Online (Sandbox Code Playgroud)