Skip To Content

Развертывание пользовательских пакетов Python для ArcGIS Server

ArcGIS Server включает Python 2.7 для Windows 64-разр. В ArcGIS Enterprise 10.5 и более поздние версии в ArcGIS Server включена среда conda на базе Python 3.

Установка Python для ArcGIS Server включает дополнительные пакеты, такие как numpy и matplotlib. Однако, если необходимо установить дополнительные пользовательские пакеты Python, выполните приведенные ниже действия.

Сервисы, опубликованные из ArcGIS Pro

Как и ArcGIS Pro, ArcGIS Server использует conda для управления средами Python. Начиная с ArcGIS Server 10.7.1, вы можете задавать среду Python для всех сервисов геообработки. Начиная с ArcGIS Server 10.8.1, вы можете задавать среду Python для отдельного сервиса геообработки.

Следующие шаги используются для сервисов геообработки, опубликованных из ArcGIS Pro или с помощью arcpy. Более подробную информацию о среде Python вArcGIS Pro см.в разделе Python в ArcGIS Pro. Рекомендуется клонировать среду Python по умолчанию для проведения обновлений. Одновременно только одна среда Python может быть активирована для ArcGIS Server.

Дополнительные сведения об использовании и работе с conda см. в разделе Введение в conda.

Настройка среды Python для всех сервисов геообработки

Для развертывания сторонних пакетов Python на ArcGIS Server выполните для каждого компьютера сайта следующие шаги:

  1. Войдите на компьютер ArcGIS Server под учетной записью ArcGIS Server и откройте окно командной строки от имени администратора.
  2. Измените директорию на <install>\ArcGIS\Server\framework\runtime\ArcGIS\bin\Python\Scripts.
  3. Клонируйте среду Python сервера по умолчанию с новым именем, например, newenvname, в директорию установки среды Python ArcGIS Server, используя команду conda create --clone arcgispro-py3 --prefix "<install>\ArcGIS\Server\framework\runtime\ArcGIS\bin\Python\envs\newenvname". Замените префикс на имя вашей папки установки и имя новой среды.
  4. Чтобы активировать клонированную среду, запустите proswap newenvname.
  5. Установите сторонние пакеты Python, запустив conda install. Используйте pip install, только если conda install не доступен.
  6. Перезапустите сервисы ArcGIS Server на вкладке Службы в Windows Task Manager или в Windows Services. На перезапуск сервисов может потребоваться несколько минут.
  7. Повторите шаги с 1 по 6 на каждом компьютере сайта ArcGIS Server, если требуется.

Чтобы добавить дополнительные пакеты к имеющейся среде conda, выполните следующие шаги:

  1. Войдите в свой компьютер ArcGIS Server.
  2. В меню Пуск откройте Python 3 Command Prompt. Он может находиться в папке ArcGIS Server, в зависимости от ОС.
  3. Запустите conda install для пакетов, которые необходимо развернуть. Используйте pip install, только если conda install не доступен.
  4. Перезапустите сервисы геообработки в ArcGIS Server Manager.
  5. Дополнительно перезапустите сервис ArcGIS Server на вкладке Службы в Windows Task Manager. Все службы будут снова подключены через несколько минут.
  6. Повторите шаги с 1 по 5 на каждом компьютере сайта ArcGIS Server, если требуется.

Настройка среды Python для отдельного сервиса геообработки

Клонируйте среду Python сервера по умолчанию, установите сторонние пакеты Python и измените свойства сервиса геообработки, выполнив следующие шаги:

  1. Войдите на компьютер ArcGIS Server под учетной записью ArcGIS Server и откройте окно командной строки от имени администратора.
  2. Измените директорию на <install>\ArcGIS\Server\framework\runtime\ArcGIS\bin\Python\Scripts.
  3. Клонируйте среду Python сервера по умолчанию с новым именем, например, newenvname, в директорию установки среды Python ArcGIS Server, используя команду conda create --clone arcgispro-py3 --prefix "<install>\ArcGIS\Server\framework\runtime\ArcGIS\bin\Python\envs\newenvname". Замените префикс на имя вашей папки установки и имя новой среды.
  4. Активируйте новую среду в окне командной строки с activate newenvname.
  5. Установите пакеты Python с conda install packagename=version. Это необязательно, но рекомендуется для выравнивания версии пакета, используемой в ArcGIS Pro процессе публикации, и версии пакета, установленной на сервере.
  6. Когда все пакеты будут установлены, перейдите в ArcGIS Server administrator directory. В Ресурсы в нижней части страницы найдите сервисы.
  7. Выберите сервис геообработки, для которого вы желаете настроить среду Python.
  8. В разделе Поддерживаемые операции внизу этой страницы щелкните Редактировать.
  9. В сервисе JSON добавьте пару ключ-значение "condaEnvironmentPath": "<install>\\ArcGIS\\Server\\framework\\runtime\\ArcGIS\\bin\\Python\\envs\\newenvname" в параметры. Упрощенный параметр сервиса JSON, включающий новый параметр condaEnvironmentPath

    Service Properties

    {
     "serviceName": "gvonly",
     "type": "GPServer",
     "description": "",
     "allowedUploadFileTypes": "",
     "properties": {
      "toolbox": "C:\\arcgisserver\\directories\\arcgissystem\\arcgisinput\\gvonly.GPServer\\extracted\\p20\\gvonly.tbx",
      "condaEnvironmentPath": "C:\\Program Files\\ArcGIS\\Server\\framework\\runtime\\ArcGIS\\bin\\Python\\envs\\flaskonly"
     },
     "portalProperties": {
      "isHosted": false,
      "portalItems": [{
       "itemID": "4921223df97744a593d0b776666b9da9",
       "type": "GPServer"
      }]
     },
     "extensions": [{
      "typeName": "WPSServer",
      "properties": {
       "serviceType": "",
       "name": ""
      }
     }],
     "frameworkProperties": {},
     "datasets": []
    }
  10. Щелкните кнопку Сохранить изменения, чтобы сохранить новый параметр.
  11. Сервис будет автоматически перезапущен.

Сервисы, опубликованные из ArcGIS Desktop

В следующих шагах описываются сервисы геообработки, опубликованные из ArcMap и модуля arcpy на базе Python 2.7. Выполните эти шаги на всех компьютерах сайта ArcGIS Server. Пакет будет установлен на используемый с сервером по умолчанию Python 2.7 и будет применяться ко всем сервисам, опубликованным из ArcGIS Desktop.

  1. Загрузите пакет 64-разрядной версии для Windows стороннего поставщика, которую вы хотели бы установить.
  2. Дважды щелкните файл .msi или .exe, чтобы установить пакет.

Пользовательские пакеты обычно устанавливаются в папку C:\Python27\ArcGISx6410.8\lib\site-packages.

Проверьте пользовательские пакеты Python на сервисах, опубликованных из ArcGIS Desktop

Чтобы проверить правильность установки пакета, создайте скрипт Python, который импортирует установленный пакет и запускает скрипт. Если вы еще не знаете, как запускать отдельные скрипты, следуйте приведенным ниже пошаговым инструкциям.

  1. Откройте окно терминала.
  2. Запустите Python 2.7 с сервера со скриптом в качестве аргумента, например, <ArcGISServer_InstallDir>/arcgis/server/tools/python ~/projectX/mytestscript.py.

Примечание:

С ArcGIS Server (Linux) устанавливаются 64-разрядные библиотеки Python для Windows. Поэтому автономные скрипты Python всегда должны использовать разделитель путей в ОС Windows (\\) при доступе к данным и другим модулям Python. Кроме того, следует помнить о существовании директории Z:\, которая подключается в Linux как системная /. В скрипте Python можно получить доступ к данным и другим модулям Python через отображение диска Z:\. Например, данные в /myuser/myproject/data могут быть доступны с помощью z:\myuser\myproject\data.

Это не применяется к скриптам Python, которые публикуются из ArcGIS Desktop, так как процесс публикации конвертирует все пути в корректный формат.

Связанные разделы