python - instalar - Cómo actualizar un entorno Conda existente con un archivo.yml
instalar django anaconda (3)
Intente usar la actualización de conda env :
source activate myenv
conda env update --file local.yml
¿Cómo se puede actualizar un entorno conda preexistente con otro archivo .yml?
Esto es extremadamente útil cuando se trabaja en proyectos que tienen múltiples archivos de requisitos, es decir
base.yml, local.yml, production.yml
, etc.
Por ejemplo, a continuación se muestra un archivo
base.yml
con paquetes conda-forge, conda y pip:
base.yml
name: myenv
channels:
- conda-forge
dependencies:
- django=1.10.5
- pip:
- django-crispy-forms==1.6.1
El entorno real se crea con:
conda env create -f base.yml
.
Más adelante, se deben agregar paquetes adicionales a
base.yml
.
Otro archivo, digamos
local.yml
, necesita importar esas actualizaciones.
Los intentos anteriores para lograr esto incluyen:
crear un archivo
local.yml
con una definición de importación:
channels:
dependencies:
- pip:
- boto3==1.4.4
imports:
- requirements/base.
Y luego ejecute el comando:
conda install -f local.yml
.
Esto no funciona. ¿Alguna idea?
La respuesta de alkamid está en la línea correcta, pero descubrí que Conda no puede instalar nuevas dependencias si el entorno ya está activo. La desactivación del entorno primero resuelve esto:
source deactivate;
conda env update -f whatever.yml;
source activate my_environment_name; # Must be AFTER the conda env update line!
La respuesta sugerida es parcialmente correcta. Deberá agregar la opción --prune para desinstalar también los paquetes que se eliminaron del environment.yml. Comando correcto:
conda env update -f local.yml --prune