python - commands - conda list environments
Cómo compartir entornos conda a través de plataformas. (1)
Responder
Esta respuesta se da con el supuesto de que le gustaría asegurarse de que las mismas versiones de los paquetes que generalmente le interesan estén en diferentes plataformas y que no le interesen las mismas versiones exactas de todos los paquetes en todo el árbol de dependencias. . Si está intentando instalar la misma versión exacta de todos los paquetes en todo su árbol de dependencias que tiene una alta probabilidad de falla, ya que algunos paquetes conda tienen diferentes dependencias para osx / win / linux. Por ejemplo, la receta para otrobopt instalará diferentes paquetes en win vs. osx / linux, por lo que la lista de entornos sería diferente.
Recomendación: cree manualmente un archivo environment.yaml y especifique o fije solo las dependencias que le interesan. Deja que el solucionador de conda haga el resto. Probablemente vale la pena señalar que conda-env
(la herramienta que utiliza para administrar los entornos de Conda) le recomienda explícitamente que "Siempre cree su archivo environment.yml a mano".
Entonces solo harías conda env create --file environment.yml
Echa un vistazo al conda-env readme para conda-env .
Pueden ser bastante simples:
name: basic_analysis
dependencies:
- numpy
- pandas
O más complejo donde se fijan las dependencias y se especifican los canales anaconda.org para instalar desde:
name: stats-web
channels:
- javascript
dependencies:
- python=3.4 # or 2.7 if you are feeling nostalgic
- bokeh=0.9.2
- numpy=1.9.*
- nodejs=0.10.*
- flask
- pip:
- Flask-Testing
En cualquier caso, puede crear un entorno con conda env create --file environment.yaml
Si tiene un caso de uso más complejo o preguntas adicionales, actualice la pregunta original y veré si puedo ayudarlo un poco más.
Los documentos de Conda en http://conda.pydata.org/docs/using/envs.html explican cómo compartir entornos con otras personas.
Sin embargo, los documentos nos dicen que esto no es multiplataforma:
NOTE: These explicit spec files are not usually cross platform, and
therefore have a comment at the top such as # platform: osx-64 showing the
platform where they were created. This platform is the one where this spec
file is known to work. On other platforms, the packages specified might not
be available or dependencies might be missing for some of the key packages
already in the spec.
NOTE: Conda does not check architecture or dependencies when installing
from an explicit specification file. To ensure the packages work correctly,
be sure that the file was created from a working environment and that it is
used on the same architecture, operating system and platform, such as linux-
64 or osx-64.
¿Existe un buen método para compartir y recrear un entorno conda en una plataforma (por ejemplo, CentOS) en otra plataforma (por ejemplo, Windows)?