2016-11-15 4 views
1

別のconda環境から生成されたrequirements.ymlファイルを使用してミニコンダで環境を作成しようとしています。私はチャンネルから来ているパッケージで困っています。 requirements.ymlは、次のコマンドを使用して、既存の環境から生成されているマシンで Condaはchannelsを使用しているときにrequirements.ymlを解析できません

requirements.ymlファイルの

(myenv)$ conda env export > requirements.yml 

内容は(バージョン番号を洗浄した後):上記

name: myenv 
channels: !!python/tuple 
- !!python/unicode 
'defaults' 
dependencies: 
- pytest 
- conda-forge::pytest-xdist 
- pytest-cov 
- numpy 
- scipy 
- pymongo 
- auto::pycallgraph 
- flask 
- conda-forge::flask-restful 
- conda-forge::flask-httpauth 
- blaze::flask-mongoengine 
- hugo::flask-security 
- flask-wtf 
- wtforms 
- conda-forge::mongoengine 
- pip: 
- descartes 
prefix: .miniconda2/envs/myenv 

パッケージを「手動」でインストールするには、チャネルを指定します。たとえば、

$(myenv) conda install -c conda-forge pytest-xdist 
01別のマシン(同じアーキテクチャ、Linuxの-64)に requirements.ymlを転送

、condaは、新しい環境の作成に失敗します。

$ conda env create --file requirements.yml 

Fetching package metadata ....... 
Solving package specifications: . 
Error: Packages missing in current linux-64 channels: 
    - conda-forge::pytest-xdist 
    - auto::pycallgraph 
    - conda-forge::flask-restful 
    - conda-forge::flask-httpauth 
    - blaze::flask-mongoengine 
    - hugo::flask-security 
    - conda-forge::mongoengine 

conda構文<channel>::<package name>を解析することができないようです。

使用システム:ドッカー画像連続/ミニコンダ。

仕様ファイルから新しい環境をうまく作成する方法はありますか(例:継続的な統合に役立つ)?

答えて

1

解決方法1:バージョン4.2.12へ

更新conda(私の場合には4.1であった)

conda update conda 

その後、要件が

conda env create -f requirements.yml 

を提出ロードすることによって、環境を作成ソリューション2:

は、ファイルのchannelsセクション内のチャンネルの名前を追加し、パッケージリストにチャンネル名を削除します。

name: myenv 
channels: !!python/tuple 
- !!python/unicode 
    'defaults' 
- !!python/unicode 
    'auto' 
- !!python/unicode 
    'conda-forge' 
- !!python/unicode 
    'blaze' 
- !!python/unicode 
    'hugo' 
dependencies: 
- pytest 
- pytest-xdist 
- pytest-cov 
- numpy 
- scipy 
- pymongo 
- pycallgraph 
- flask 
- flask-restful 
- flask-httpauth 
- flask-mongoengine 
- flask-security 
- flask-wtf 
- wtforms 
- mongoengine 
- pip: 
- descartes 
prefix: .miniconda2/envs/myenv 
+0

あなたはあなたの答えを受け入れる必要があります。 –

関連する問題