ArcGIS Server には Windows 64 ビット用の Python 2.7 が含まれています。ArcGIS Enterprise 10.5 以降では、Python 3 ベースの conda 環境が ArcGIS Server に付属しています。
ArcGIS Server の Python のインストールには、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 を使用して公開されたジオプロセシング サービスのステップです。ArcGIS Pro における Python 環境の詳細については、「ArcGIS Pro の Python」をご参照ください。更新を行うときは、デフォルトの Python 環境のクローンを作成することをお勧めします。ArcGIS Server でアクティブ化できる Python 環境は一度に 1 つのみです。
conda の使用および操作の詳細については、「conda の概要」をご参照ください。
すべてのジオプロセシング サービスへの Python 環境の指定
ArcGIS Server にサードパーティの Python パッケージを配置するには、サイト内の各コンピューターに次のステップを使用します。
- ArcGIS Server アカウントを使用して ArcGIS Server コンピューターにログインし、管理者としてコマンド プロンプトを開きます。
- ディレクトリを <install>\ArcGIS\Server\framework\runtime\ArcGIS\bin\Python\Scripts に変更します。
- 次のコマンドで新しい環境名 (たとえば newenvname) を使用して ArcGIS Server インストールの Python 環境ディレクトリにサーバーのデフォルト Python 環境のクローンを作成します。conda create --clone arcgispro-py3 --prefix "<install>\ArcGIS\Server\framework\runtime\ArcGIS\bin\Python\envs\newenvname" Prefix オプションを、インストールディレクトリと新しい環境名に置き換えます。
- クローン環境をアクティブ化するには、proswap newenvname を実行します。
- conda install を実行してサードパーティの Python パッケージをインストールします。conda install を使用できない場合のみ pip install を使用します。
- Windows タスク マネージャーの [サービス] タブまたは Windows サービスで ArcGIS Server サービスを再起動します。すべてのサービスがオンラインに戻るまでに数分かかります。
- 必要に応じて、ArcGIS Server サイト内の各コンピューターで、手順 1 ~ 6 を繰り返します。
既存の conda 環境にパッケージを追加するには、次の手順に従います。
- ArcGIS Server コンピューターにサイン インします。
- [スタート] メニューから、[Python 3 コマンド プロンプト] を開きます。 ご使用のオペレーティング システムによっては、このメニューが ArcGIS Server フォルダー内にある場合があります。
- 配置する必要があるパッケージに対して conda install を実行します。conda install を使用できない場合のみ pip install を使用します。
- ArcGIS Server Manager でジオプロセシング サービスを再起動します。
- 必要に応じて、Windows タスク マネージャーの [サービス] タブで ArcGIS Server サービスを再起動します。数分ですべてのサービスがオンラインに戻ります。
- 必要に応じて、ArcGIS Server サイト内の各コンピューターで、手順 1 ~ 5 を繰り返します。
単一のジオプロセシング サービスへの Python 環境の指定
次のステップを使用して、サーバーのデフォルト Python 環境のクローンを作成し、サードパーティの Python パッケージをインストールし、ジオプロセシング サービスのサービス プロパティを編集します。
- ArcGIS Server アカウントを使用して ArcGIS Server コンピューターにログインし、管理者としてコマンド プロンプトを開きます。
- ディレクトリを <install>\ArcGIS\Server\framework\runtime\ArcGIS\bin\Python\Scripts に変更します。
- 次のコマンドで新しい環境名 (たとえば newenvname) を使用して ArcGIS Server インストールの Python 環境ディレクトリにサーバーのデフォルト Python 環境のクローンを作成します。conda create --clone arcgispro-py3 --prefix "<install>\ArcGIS\Server\framework\runtime\ArcGIS\bin\Python\envs\newenvname" Prefix オプションを、インストールディレクトリと新しい環境名に置き換えます。
- activate newenvname を使用して、コマンド プロンプト ウィンドウの新しい環境をアクティブ化します。
- conda install packagename=version を使用して、Python パッケージをインストールします。公開プロセス時に ArcGIS Pro で使用したパッケージのバージョンとサーバーにインストールしたパッケージのバージョンを合わせることは必須ではありませんが、ベスト プラクティスです。
- すべてのパッケージをインストールしたら、ArcGIS Server 管理者ディレクトリに移動します。ページ下部の [リソース] で、[サービス] を選択します。
- Python 環境を指定するジオプロセシング サービスを選択します。
- ページ下部の [サポートされるオペレーション] で [編集] をクリックします。
- サービス JSON で、キー値のペア "condaEnvironmentPath": "<install>\\ArcGIS\\Server\\framework\\runtime\\ArcGIS\\bin\\Python\\envs\\newenvname" をプロパティに追加します。新しい condaEnvironmentPath プロパティを含む、単純化したサービス プロパティ JSON
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": [] }
- [編集の保存] ボタンをクリックして、編集を保存します。
- サービスが自動的に再起動します。
ArcGIS Desktop から公開されたサービス
次に示す手順は、ArcMap から公開されたジオプロセシング サービスおよび Python 2.7 に基づく arcpy モジュールに対応しています。ArcGIS Server サイト内にあるコンピューターごとに、手順を繰り返します。パッケージがサービスのデフォルト Python 2.7 にインストールされ、ArcGIS Desktop から公開されたすべてのサービスに適用されます。
- インストール対象の Windows 64 ビット バージョンのサードパーティ パッケージをダウンロードします。
- *.msi または *.exe ファイルをダブルクリックして、パッケージをインストールします。
通常、カスタム パッケージは C:\Python27\ArcGISx6410.8\lib\site-packages ディレクトリにインストールされます。
ArcGIS Desktop から公開されたサービスのカスタム Python パッケージのテスト
パッケージが適切にインストールされたかどうかをテストするには、インストールしたパッケージをインポートする Python スクリプトを作成して実行します。スタンドアロン スクリプトに慣れていない場合、以下の手順に従います。
- ターミナル ウィンドウを開きます。
- スクリプトを引数に指定して、サーバーの Python 2.7 を実行します。たとえば、「<ArcGISServer_InstallDir>/arcgis/server/tools/python ~/projectX/mytestscript.py」と入力します。
メモ:
ArcGIS Server (Linux) のインストールによってインストールされた Python ライブラリは Windows 64 ビットの Python です。したがって、データや他の Python モジュールにアクセスする場合、スタンドアロンの Python スクリプトには常に Windows のパスの区切り文字 (\) を使用する必要があります。また、Z:\ ディレクトリが Linux システムの / にマッピングされることにも留意してください。Python スクリプトでは、Z:\ マッピングを使用して、データや他の Python モジュールにアクセスできます。たとえば、/myuser/myproject/data にあるデータは z:\myuser\myproject\data を使用してアクセスできます。
ArcGIS Desktop から Python スクリプトを公開する場合、公開プロセスによってすべてのパスが正しい形式に変換されるため、これは適用されません。