condaenvironment.ymlとpiprequirements.txtの組み合わせ


106

私はconda環境で作業しており、いくつかのpipパッケージも必要です。たとえば、〜gohlkeのコンパイル済みホイールなどです

現在、私は2つのファイルを持っています:environment.ymlcondaの場合:

# run: conda env create --file environment.yml
name: test-env
dependencies:
- python>=3.5
- anaconda

そしてrequirements.txtPIPのconda環境上で起動した後に使用することができ:

# run: pip install -i requirements.txt
docx
gooey
http://www.lfd.uci.edu/~gohlke/pythonlibs/bofhrmxk/opencv_python-3.1.0-cp35-none-win_amd64.whl

それらを1つのファイル(conda用)に結合する可能性はありますか?


2
condaでrequirements.txtを使用するためのGitHubプルリクエストがあります。github.com/conda/conda-env/pull/172
OneCricketeer

3
conda env export現在インストールされているパッケージに基づいて.ymlのテキストを生成します。
ケニー

回答:


132

Pipの依存関係は、次のenvironment.ymlようにファイルに含めることができます(docs):

# run: conda env create --file environment.yml
name: test-env
dependencies:
- python>=3.5
- anaconda
- pip
- pip:
  # works for regular pip packages
  - docx
  - gooey
  # and for wheels
  - http://www.lfd.uci.edu/~gohlke/pythonlibs/bofhrmxk/opencv_python-3.1.0-cp35-none-win_amd64.whl

また.whl、同じディレクトリ内のファイル(Dengarの回答を参照)や一般的なpipパッケージでも機能します。


3
うまくいきました! conda env create -f environment.yml、およびenvironment.ymlファイルは現在のディレクトリにある必要があります。そうでない場合、奇妙なエラーがスローされます。
Johnny Zhang

37

requirements.txtYAMLで直接使用することもできます。例えば、

name: test-env
dependencies:
  - python>=3.5
  - anaconda
  - pip
  - pip:
    - -r file:requirements.txt

基本的に、一緒に実行できるオプションpip installすべてYAMLで実行できます。他の機能のショーケースについては、Advanced PipExampleを参照してください。


どういう-r意味ですか?pipのコマンドラインオプション(ここ)を見ると-r、それがどこから来たのかを知るのに役立ちます(そして--長い形式の同等のものがある場合)
dumbledad

3
それを見つけた、私はここpip installオプションを見るべきだった。は要件ファイル用であり、より長い同等のものは-r--requirement
dumbledad

condaなしでYAMLを使用する方法はありますか?または、要件ファイルで必要なPythonのバージョンを指定しますか?
Mez13

@ Mez13新しい質問をしてください。
merv

13

ディレクトリにホイールを追加しても機能することを追加したいだけです。URL全体を使用すると、次のエラーが発生していました。

HTTP error 404 while getting http://www.lfd.uci.edu/~gohlke/pythonlibs/f9r7rmd8/opencv_python-3.1.0-cp35-none-win_amd64.whl

ホイールをダウンロードして、ymlファイルと同じディレクトリに保存することになりました。

name: test-env
dependencies:
- python>=3.5
- anaconda
- pip
- pip:
  - opencv_python-3.1.0-cp35-none-win_amd64.whl

2
私は上記の答えでこれについて言及しました。
bastelflp 2017年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.