web-dev-qa-db-ja.com

特定のconda環境にチャネルを追加できますか?

特定の conda環境 にcondaチャンネルを追加したいが、使用する場合

conda config --add channels glotzer

そのチャネルは、すべてのconda環境から利用できるようになりました。別の環境からのインストールのテストに加えて、~/.condarcファイルには次のものがあります。

channels:
  - glotzer
  - defaults

特定の環境からのみチャネルが利用できるようにcondaを構成するにはどうすればよいですか?

channel documentation conda> = 4.1.0では、~/.condarcは、追加されたチャネルがコアパッケージセットを上書きしないようにします。

デフォルトでは、condaは優先度の低いチャネルのバージョンよりも優先度の高いチャネルのパッケージを優先するようになりました。したがって、デフォルトのチャンネルにない追加のパッケージを提供するために、チャンネルリストの一番下にチャンネルを安全に配置し、これらのチャンネルがコアパッケージセットをオーバーライドしないことを確信できます。

これにより、1つの環境でチャネルを介してパッケージを追加してコアパッケージを上書きする場合を除いて、ほとんどの問題が防止されると考えています。

24

Conda 4.2以降、環境固有の.condarcファイルがサポートされており、次のように記述できます。

conda config --env --add channels glotzer

アクティブ環境の構成にチャネルを追加します。

[--envフラグは4.2で追加されました。 conda 4.5.9に基づく回答]

26

現在、単一のconda環境にチャネルを追加することはできません。グローバル~/.condarcファイルにチャネルを追加したくない場合は、特定のチャネルからパッケージをインストールするオプションを使用する必要があります。

conda install <some-package> -c glotzer
6

conda環境の仕様を含むenvironment.ymlファイルを作成できます。完全なドキュメントは here ですが、基本的なセットアップは次のとおりです。

name: EnvironmentName
channels:
    - conda-forge
    - glotzer
dependencies:
    - pip:
        - tensorflow
    - pandas=0.22.*

環境を使用するには、次を入力します

conda env create -f environment.yml
conda activate EnvironmentName

environment.ymlが変更されたとき、またはパッケージが更新されたときに環境を更新するには、

conda env update -f environment.yml
conda activate EnvironmentName
4
BallpointBen

特定のチャネルを使用して新しい環境を作成できます。

conda create -n EnvironmentName -c ChannelName

0
Tony Shouse