Wie zu teilen, conda-Umgebungen auf allen Plattformen
Den conda-docs an http://conda.pydata.org/docs/using/envs.html erklären, wie zu teilen, Umgebungen mit anderen Menschen.
Aber die docs sagen uns, das ist nicht cross-Plattform:
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.
Ist es eine gute Methode, um zu teilen und erstellen Sie die conda-Umfeld in einer Plattform (z.B. CentOS) in einer anderen Plattform (z.B. Windows)?
InformationsquelleAutor user3731622 | 2016-09-01
Du musst angemeldet sein, um einen Kommentar abzugeben.
Antwort
Diese Antwort gegeben wird, mit der Annahme, dass Sie möchten, um sicherzustellen, dass
die gleichen Versionen der Pakete, die Sie im Allgemeinen interessiert sind auf
verschiedene Plattformen und Sie kümmern sich nicht um die exakt gleichen Versionen
alle Pakete in die gesamte Abhängigkeitsstruktur. Wenn Sie versuchen, installieren Sie die
exakt die gleiche version aller Pakete in Ihrem gesamten Abhängigkeitsbaum, die hat ein
hohe Ausfallwahrscheinlichkeit, da einige conda Pakete haben verschiedene
Abhängigkeiten für osx/win/linux. Zum Beispiel, das Rezept für
otrobopt
installieren verschiedener Pakete auf win vs. osx/linux, so die Umwelt-Liste
anders sein würde.
Empfehlung: erstellen Sie manuell eine Umgebung.yaml-Datei, und geben Sie oder pin
nur die Abhängigkeiten, die Sie interessieren. Lassen Sie die conda-solver den rest erledigen.
Wahrscheinlich erwähnenswert ist, dass
conda-env
(das tool, das Sie verwenden, zu verwalten condaUmgebungen) empfiehlt explizit, dass Sie "Immer erstellen Sie Ihre
Umwelt.yml-Datei von hand."
Dann würden Sie nur tun
conda env create --file environment.yml
Haben Sie einen Blick auf die readme-Datei
conda-env.
Können Sie ganz einfach:
Oder mehr Komplex, wo Sie die pin-Abhängigkeiten und angeben anaconda.org Kanäle
installieren von:
In jedem Fall können Sie ein Umfeld schaffen, mit
conda env create --file environment.yaml
Wenn Sie einen komplexeren Anwendungsfall oder weitere Fragen haben, aktualisieren Sie die ursprüngliche
Frage und ich werde sehen, ob ich Ihnen helfen kann, ein bisschen mehr.
InformationsquelleAutor Eric Dill
conda-env export verwendet werden soll verwendet werden, um das exportieren Ihrer kompletten Umgebung-Datei mit dem Namen my_env.yml.
Überprüfen Sie die funktionierende Lösung, auf immer nur Präfix auf OS X statt der kompletten Abhängigkeit einschließlich pip.
Schritt 1: deaktivieren von der Umgebung, wenn aktiviert. sonst wird es schaffen yml-Datei, die nur Präfix.
Schritt 2: führen Sie den nachstehenden Befehl zu exportieren
conda-env export -n my_env > my_env.yml
es wird die Ausfuhr jedes erforderliche Abhängigkeit, Kanal-und pip-Installation in eine yml-Datei, die importiert werden kann, mit anderen zu teilen.
Schritt 3: führen Sie unten den Befehl importieren
conda-env erstellen -n my_env -f= my_env.yml
es wird die genaue Umgebung so wie Sie ist auf den Austausch von Kolleginnen und Maschine.
InformationsquelleAutor Irurik Soft Labs
Für diejenigen, die interessiert in eine Lösung für eine einheitliche Umwelt-Datei, die verwendet werden können, in Linux, macOS und Windows, überprüfen Sie bitte die
conda-devenv
tool auf https://github.com/ESSS/conda-devenv.InformationsquelleAutor Allan