Je veux ajouter un canal conda à un environnement spécifique conda mais lorsque je l'utilise
conda config --add channels glotzer
ce canal est maintenant disponible dans tous les environnements conda. En plus de tester une installation à partir d'un autre environnement, le fichier ~/.condarc
contient les éléments suivants:
channels:
- glotzer
- defaults
Comment pourrais-je configurer conda pour que le canal ne soit disponible que dans un environnement spécifique?
J'ai trouvé dans la documentation de channel que pour conda> = 4.1.0, placer les chaînes au bas du ~/.condarc
empêchera les chaînes ajoutées de surcharger le paquet de base.
Par défaut, conda préfère désormais les paquets d'un canal de priorité supérieure à toute version d'un canal de priorité inférieure. Par conséquent, vous pouvez maintenant mettre en toute sécurité des canaux au bas de votre liste de canaux pour fournir des paquets supplémentaires qui ne sont pas dans le canaux par défaut, et assurez-vous que ces canaux ne le seront pas remplacer le paquet de base.
Je pense que cela évitera la plupart des problèmes, sauf lorsque, dans un environnement, vous souhaitez que le package ajouté via un canal remplace un package principal.
À partir de la version 4.2, les fichiers .condarc
spécifiques à l'environnement sont pris en charge et vous pouvez écrire:
conda config --env --add channels glotzer
pour ajouter le canal à la configuration de l'environnement actif.
[ Je ne sais pas si le drapeau --env
a été ajouté en 4.2. Réponse basée sur conda 4.5.9 ]
Actuellement, il n'est pas possible d'ajouter un canal à un seul environnement conda. Si vous ne souhaitez pas ajouter de canal au fichier global ~/.condarc
, vous devez utiliser l'option permettant d'installer un package à partir d'un canal spécifique:
conda install <some-package> -c glotzer
Vous pouvez créer un fichier environment.yml
contenant la spécification de votre environnement conda
. Les documents complets sont ici , mais la configuration de base est la suivante:
name: EnvironmentName
channels:
- conda-forge
- glotzer
dependencies:
- pip:
- tensorflow
- pandas=0.22.*
Pour utiliser l'environnement, tapez
conda env create -f environment.yml
conda activate EnvironmentName
Pour mettre à jour l'environnement lorsque environment.yml
est modifié ou que les packages sont mis à jour,
conda env update -f environment.yml
conda activate EnvironmentName
Vous pouvez créer un nouvel environnement avec un canal spécifique:
conda create -n EnvironmentName -c ChannelName