Puis-je ajouter un canal à un environnement conda spécifique?
je veux ajouter un canal conda à un conda environnement mais quand j'utilise
conda config --add channels glotzer
ce canal est maintenant disponible dans tous mes environnements conda. En plus de tester une installation à partir d'un autre environnement, le ~/.condarc
le fichier est la suivante:
channels:
- glotzer
- defaults
comment configurer conda pour que le canal ne soit disponible que dans un environnement spécifique?
je n'ai trouver dans le Documentation des canaux que pour conda > = 4.1.0, en plaçant des canaux au bas de la ~/.condarc
empêchera les canaux ajoutés de surcharger le paquet de base.
par défaut, conda préfère désormais les paquets d'un canal de priorité supérieure à n'importe quelle version d'un canal de priorité inférieure. Par conséquent, vous pouvez maintenant mettre des chaînes au fond de votre liste des canaux pour fournir des paquets supplémentaires qui ne sont pas dans le les canaux par défaut, et encore être sûr que ces canaux ne seront pas Outrepasser le paquet de base définir.
Je m'attends à ce que cela prévienne la plupart des problèmes, sauf si dans un environnement vous voulez que le paquet soit ajouté via un canal pour outrepasser un paquet de base.
3 réponses
Actuellement, il n'est pas possible d'ajouter un canal à un seul environnement conda. Si vous ne souhaitez pas ajouter un canal pour le mondial ~/.condarc
file, vous devriez utiliser l'option pour installer un paquet à partir d'un canal spécifique:
conda install <some-package> -c glotzer
à partir de la conda 4.2, spécifique à l'environnement .condarc
les fichiers sont supportés et vous pouvez écrire:
conda config --env --add channels glotzer
pour ajouter le canal à la configuration de l'environnement actif.
[Pas sûr que ce soit --env
le drapeau a été ajouté à la section 4.2. Réponse basée sur conda 4.5.9]
Vous pouvez créer un environment.yml
le fichier contenant la spécification de votre conda
environnement. 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 quand environment.yml
est modifié ou les paquets sont mis à jour,
conda env update -f environment.yml
conda activate EnvironmentName