Ab ArcGIS Enterprise 10.5 ist eine Python 3-basierte Conda-Umgebung in ArcGIS Server enthalten.
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.
Services, die aus ArcGIS Pro veröffentlicht werden
Wie in ArcGIS Pro werden in ArcGIS Server Python-Umgebungen mit Conda verwaltet. Ab ArcGIS Server 10.7.1 können Sie für alle Geoverarbeitungsservices eine Python-Umgebung festlegen. Ab ArcGIS Server 10.8.1 können Sie für einzelne Geoverarbeitungsservices eine Python-Umgebung festlegen.
Die folgenden Schritte gelten für Geoverarbeitungsservices, die über ArcGIS Pro oder mit ArcPy veröffentlicht wurden. Weitere Informationen zur Python-Umgebung in ArcGIS Pro finden Sie unter Python in ArcGIS Pro. Es wird empfohlen, die Python-Standardumgebung zu klonen, um Aktualisierungen durchzuführen. Es kann nur jeweils eine Python-Umgebung für ArcGIS Server aktiviert sein.
Weitere Informationen zum Verwenden von und Arbeiten mit Conda finden Sie in der Einführung zu Conda.
Festlegen einer Python-Umgebung für alle Geoverarbeitungsservices
Führen Sie für jeden Computer Ihrer Site die folgenden Schritte aus, um mit ArcGIS Server Python-Pakete von Drittanbietern bereitzustellen:
- Melden Sie sich mit dem ArcGIS Server-Konto bei Ihrem ArcGIS Server-Computer an, und öffnen Sie das Eingabeaufforderungsfenster als Administrator.
- Ändern Sie das Verzeichnis in <install>\ArcGIS\Server\framework\runtime\ArcGIS\bin\Python\Scripts.
- Klonen Sie die Python-Standardumgebung des Servers im Python-Umgebungsverzeichnis der ArcGIS Server-Installation mit einem neuen Umgebungsnamen, z. B. newenvname. Verwenden Sie dazu den 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.
- Um die geklonte Umgebung zu aktivieren, führen Sie proswap newenvname aus.
- 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.
- 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.
- Wiederholen Sie bei einer Bereitstellung auf mehreren Computern die Schritte 1 bis 6 für alle anderen Computer der ArcGIS Server-Site.
Führen Sie die folgenden Schritte aus, um der vorhandenen Conda-Umgebung weitere Pakete hinzuzufügen:
- Melden Sie sich bei Ihrem ArcGIS Server-Computer an.
- Öffnen Sie die Python 3-Befehlszeile über das Startmenü. Je nach Betriebssystem kann sie sich im ArcGIS Server-Ordner befinden.
- 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.
- Starten Sie den Geoverarbeitungsservice in ArcGIS Server Manager neu.
- Optional können Sie den ArcGIS Server-Service auf der Registerkarte Dienste des Windows Task-Managers neu starten. Alle Services sind nach ein paar Minuten wieder online.
- Wenn Sie über eine Bereitstellung auf mehreren Computern verfügen, wiederholen Sie die Schritte 1 bis 5 für jeden Computer der ArcGIS Server-Site.
Festlegen einer Python-Umgebung für einen einzelnen Geoverarbeitungsservice
Führen Sie die folgenden Schritte aus, um die Python-Standardumgebung des Servers zu klonen, Python-Pakete von Drittanbietern zu installieren und die Service-Eigenschaften des Geoverarbeitungsservice zu bearbeiten:
- Melden Sie sich bei Ihrem ArcGIS Server-Computer an, und öffnen Sie die Python 3-Befehlszeile über das Startmenü. Es wird empfohlen, die Eingabeaufforderung als Administrator auszuführen, da Sie die Umgebung andernfalls möglicherweise in bestimmten Verzeichnissen nicht klonen können.
- Klonen Sie die Python-Standardumgebung des Servers im Python-Umgebungsverzeichnis der ArcGIS Server-Installation mit einem neuen Umgebungsnamen, z. B. newenvname. Verwenden Sie dazu den 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. Um die Umgebung in anderen Verzeichnissen außerhalb des ArcGIS Server-Installationsverzeichnisses zu klonen, führen Sie conda create --clone arcgispro-py3 --prefix "<fullpath>\outsideenvname" aus.
- Aktivieren Sie die neue Umgebung mithilfe von activate newenvname im Eingabeaufforderungsfenster. Wenn Sie ein Verzeichnis außerhalb des Python-Umgebungsverzeichnisses der ArcGIS Server-Installation verwenden, geben Sie den vollständigen Pfad zu der geklonten Umgebung mit activate <fullpath>\outsideenvname an.
- Installieren Sie die Python-Pakete mit conda install packagename=version. Auch wenn es nicht erforderlich ist, sollten Sie darauf achten, dass die für die Veröffentlichung in ArcGIS Pro verwendete Paketversion und die auf dem Server installierte Paketversion übereinstimmen.
- Wechseln Sie nach der Installation aller Pakete zum ArcGIS Server-Administratorverzeichnis. Navigieren Sie unter Resources unten auf der Seite zu Services.
- Wählen Sie den Geoverarbeitungsservice aus, für den Sie eine Python-Umgebung festlegen möchten.
- Klicken Sie unter Supported Operations unten auf der Seite auf Edit.
- Fügen Sie in der JSON-Datei des Service den Service-Eigenschaften das Schlüsselwertpaar "condaEnvironmentPath": "newenvname" hinzu, wenn sich die geklonte Umgebung im Python-Umgebungsverzeichnis der ArcGIS Server-Installation befindet. Wenn Sie ein Verzeichnis außerhalb des Python-Umgebungsverzeichnisses der ArcGIS Server-Installation verwenden, geben Sie den vollständigen Pfad zu der geklonten Umgebung an. Im Folgenden finden Sie eine vereinfachte JSON-Datei der Service-Eigenschaften mit der neuen condaEnvironmentPath-Eigenschaft.
Simplified service properties with a cloned Python environment in the ArcGIS Server installation's Python environment directory.
{ "serviceName": "gvonly", "type": "GPServer", "description": "", "allowedUploadFileTypes": "", "properties": { "toolbox": "C:\\arcgisserver\\directories\\arcgissystem\\arcgisinput\\gvonly.GPServer\\extracted\\p30\\gvonly.tbx", "condaEnvironmentPath": "newenvname", "showMessages": "INFO" }, "portalProperties": { "isHosted": false, "portalItems": [{ "itemID": "4921223df97744a593d0b776666b9da9", "type": "GPServer" }] }, "extensions": [{ "typeName": "WPSServer", "properties": { "serviceType": "", "name": "" } }], "frameworkProperties": {}, "datasets": [] }
- Klicken Sie auf die Schaltfläche Save Edits, um die Änderungen zu speichern.
- Der Service wird automatisch neu gestartet.