Skip To Content

Bereitstellen von benutzerdefinierten Python-Paketen für ArcGIS Server

ArcGIS Server enthält Python 2.7 für 64-Bit-Versionen von Windows. Ab ArcGIS Enterprise 10.5 ist die Conda-Umgebung in ArcGIS Server enthalten. Die Conda-Umgebung basiert auf Python 3.

Die Python-Installation von ArcGIS Server enthält Pakete wie beispielsweise numpy und matplotlib. Wenn Sie jedoch zusätzliche benutzerdefinierte Python-Pakete installieren möchten, führen Sie die folgenden Schritte aus.

Aus ArcGIS Pro veröffentlichte Services

Wie in ArcGIS Pro werden in ArcGIS Server Python-Umgebungen mit Conda verwaltet. Gehen Sie zum Klonen und Aktivieren einer vorhandenen Python-Umgebung wie nachfolgend beschrieben vor.

Hinweis:

Die folgenden Schritte gelten für Geoverarbeitungsservices, die aus ArcGIS Pro veröffentlicht werden, bzw. für das auf der ArcGIS Pro-Conda-Umgebung basierende arcpy-Modul. Weitere Informationen zur Python-Umgebung in ArcGIS Pro finden Sie unter Python in ArcGIS Pro. Es wird empfohlen, die Python-Standardumgebung zu klonen, um Updates durchzuführen. Für ArcGIS Server kann jeweils nur eine Python-Umgebung aktiviert sein.

Wenn Sie die Python-Pakete von Drittanbietern erstmalig auf einem ArcGIS Server-Computer bereitstellen, führen Sie die folgenden Schritte aus:

  1. Melden Sie sich bei Ihrem ArcGIS Server-Computer an, und öffnen Sie die Eingabeaufforderung als Administrator.
  2. Navigieren Sie zu <install>\ArcGIS\Server\framework\runtime\ArcGIS\bin\Python\Scripts.
  3. Klonen Sie die Python-Standardumgebung des Servers mit einem neuen Umgebungsnamen (newenvname) im Python-Umgebungsverzeichnis der ArcGIS Server-Installation mit dem Befehl. conda create --clone arcgispro-py3 --prefix "<install>\ArcGIS\Server\framework\runtime\ArcGIS\bin\Python\envs\newenvname". Ersetzen Sie das Präfix durch Ihr Installationsverzeichnis und den neuen Umgebungsnamen.

    Klonen Sie die Python-Standardumgebung des Servers.

  4. Um die geklonte Umgebung zu aktivieren, führen Sie proswap newenvname aus.
  5. Aktualisieren Sie die Registrierungsschlüssel, wenn Sie sich am ArcGIS Server-Computer nicht mit dem ArcGIS Server-Konto anmelden.
    1. Wenn die Registrierung Computer\HKEY_USERS\SID for ArcGIS Server Account\Software\ESRI\Server10.7 den Schlüssel PythonCondaEnv enthält, löschen Sie diesen Schlüssel. Um die Sicherheits-ID (SID) des ArcGIS Server-Kontos zu bestimmen, wechseln Sie zu Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\hivelist oder Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList.
    2. In der Registrierung Computer\HKEY_LOCAL_MACHINE\SOFTWARE\ESRI\Server10.7 ändern Sie den Wert des Schlüssels PythonCondaEnv in den newenvname, den Sie gerade angegeben haben.

      Aktualisieren Sie den Wert des Schlüssels "PythonCondaEnv".

  6. Installieren Sie die Python-Pakete von Drittanbietern, indem Sie conda install ausführen. Verwenden Sie pip install nur, wenn conda install nicht verfügbar ist. Stellen Sie sicher, dass die Pakete in der richtigen Umgebung installiert werden.

    Installieren Sie die Python-Pakete von Drittanbietern.

  7. Starten Sie den ArcGIS Server-Service auf der Registerkarte Dienste des Windows Task-Managers oder mit "Windows-Dienste" neu. Es dauert einige Minuten, bis alle Services wieder online sind.

Weitere Informationen zum Verwenden von und Arbeiten mit Conda finden Sie in der Einführung zu Conda.

Führen Sie die folgenden Schritte aus, um der vorhandenen Conda-Umgebung zusätzliche Pakete hinzuzufügen:

  1. Melden Sie sich bei Ihrem ArcGIS Server-Computer an.
  2. Öffnen Sie die Python 3-Befehlszeile über das Startmenü. Je nach Betriebssystem kann sie sich im ArcGIS Server-Ordner befinden.
  3. Führen Sie conda install für die Pakete aus, die bereitgestellt werden müssen. Verwenden Sie pip install nur, wenn conda install nicht verfügbar ist.
  4. Starten Sie den Geoverarbeitungsservice in ArcGIS Server Manager neu.
  5. Optional starten Sie den ArcGIS Server-Service auf der Registerkarte Dienste des Windows Task-Managers oder mit "Windows-Dienste" neu. Es dauert einige Minuten, bis alle Services wieder online sind.

Services, die aus ArcGIS Desktop veröffentlicht werden

Hinweis:

Die folgenden Schritte gelten für Geoverarbeitungsservices, die aus ArcMap veröffentlicht werden, und für das auf Python 2.7 basierende arcpy-Modul.

  1. Laden Sie die Windows 64-Bit-Version des Pakets herunter.
  2. Navigieren Sie zum Download-Verzeichnis.
  3. Doppelklicken Sie auf die .msi- oder .exe-Datei, um das Paket zu installieren.

Benutzerdefinierte Pakete werden in der Regel im Verzeichnis C:\Python27\ArcGISx6410.7\lib\site-packages installiert.

Testen benutzerdefinierter Python-Pakete für aus ArcGIS Desktop veröffentlichte Services

Um zu testen, ob das Paket ordnungsgemäß installiert wurde, schreiben Sie ein Python-Skript, welches das von Ihnen installierte Paket importiert, und führen Sie das Skript aus. Falls Sie mit dem Ausführen von eigenständigen Skripten nicht vertraut sind, führen Sie die folgenden Schritte aus.

  1. Öffnen Sie das Terminal-Fenster.
  2. Führen Sie Python 2.7 mit dem Skript als Argument auf dem Server aus, z. B.: <ArcGISServer_InstallDir>/arcgis/server/tools/python ~/projectX/mytestscript.py.

Hinweis:

Von einer ArcGIS Server-Installation (Linux) werden Windows 64-Bit Python-Bibliotheken installiert. Daher sollten Sie für eigenständige Python-Skripte beim Zugriff auf Daten und andere Python-Module immer das Windows-Pfadtrennzeichen (\) verwenden. Beachten Sie außerdem, dass ein Z:\-Verzeichnis vorhanden ist, das / auf dem Linux-System zugeordnet ist. In einem Python-Skript können Sie mit der Z:\-Zuordnung auf Daten und andere Python-Module zugreifen. Beispielsweise kann auf Daten in /myuser/myproject/data unter Verwendung von z:\myuser\myproject\data zugegriffen werden.

Dies gilt nicht für Python-Skripte, die Sie aus ArcGIS Desktop veröffentlichen, da beim Veröffentlichungsprozess alle Pfade in das richtige Format konvertiert werden.

Verwandte Themen