web-dev-qa-db-fra.com

Fichier d'environnement d'exportation Anaconda

Comment créer un fichier d'environnement anaconda qui pourrait être utilisé sur d'autres ordinateurs?

J'ai exporté mon environnement anaconda python au format YML à l'aide de conda env export > environment.yml. Le environment.yml exporté contient cette ligne prefix: /home/superdev/miniconda3/envs/juicyenv qui correspond à l'emplacement de mon anaconda qui sera différent sur les autres ordinateurs.

82
Lau

Je ne trouve rien dans les spécifications conda qui vous permettent d'exporter un fichier d'environnement sans la ligne prefix: .... Cependant, comme Alex a souligné dans les commentaires, conda ne semble pas se soucier de la ligne de préfixe lors de la création d'un environnement à partir d'un fichier.

Dans cet esprit, si vous souhaitez que l'autre utilisateur ne connaisse pas votre chemin d'installation par défaut, vous pouvez supprimer la ligne de préfixe avec grep avant d'écrire dans environment.yml.

conda env export | grep -v "^prefix: " > environment.yml

Dans les deux cas, l'autre utilisateur exécute alors:

conda env create -f environment.yml

et l'environnement sera installé dans leur chemin par défaut conda environment.

Si vous souhaitez spécifier un chemin d'installation différent de celui par défaut pour votre système (non lié au préfixe dans le fichier environment.yml), utilisez simplement l'indicateur -p suivi du chemin requis.

conda env create -f environment.yml -p /home/user/anaconda3/envs/env_name
108
Andrew Guy

Le moyen le plus simple de sauvegarder les packages d'un environnement à installer sur un autre ordinateur est:

$ conda list -e > req.txt

alors vous pouvez installer l'environnement en utilisant

$ conda create -n new environment --file req.txt

si vous utilisez pip, veuillez utiliser les commandes suivantes: reference https://pip.pypa.io/fr/stable/reference/pip_freeze/

$ env1/bin/pip freeze > requirements.txt
$ env2/bin/pip install -r requirements.txt
30
javac