デプロイ

ArcGIS Experience Builder で作成したエクスペリエンスは、ダウンロードして Web サーバーにホストすることができます。プライベート コンテンツを使用しているエクスペリエンスは、ArcGIS Online または ArcGIS Enterprise にアプリを登録する必要があります。エンド ユーザーに最適なユーザー エクスペリエンスを提供するために、エクスペリエンスを展開する前にシステム要件を参照してください。

エクスペリエンスのダウンロード

エクスペリエンス ギャラリーのホームページでエクスペリエンスをダウンロードするには、以下のように ● (3 つのドット) をクリックして ダウンロード をクリックします。ZIP ファイルが作成され、ローカル ドライブにダウンロードされます。ZIP ファイルは、お使いのブラウザ用に定義されたダウンロード ディレクトリにあります。

アプリケーションをダウンロードするには事前にアプリケーションを公開する必要があります。ダウンロードされたエクスペリエンスには Web サーバーのいくつかのデフォルトの設定を構成する web.config ファイルが付属しており、このデフォルト web.configArcGIS Maps SDK for JavaScript の設定が含まれるようになりました。

エクスペリエンスのデプロイ

エクスペリエンスを Web サーバーにデプロイするには、次の手順を実行します。

  1. ダウンロードしたエクスペリエンスを解凍し、フォルダーを Web サーバーにコピーします。
  2. アプリにプライベート コンテンツがある場合は、手順 3 ~ 6 を完了し、そうでない場合はエクスペリエンスのデプロイは完了です。
  3. アプリを追加して登録します。詳細については、ArcGIS Online/ArcGIS Enterprise を使用した Client ID の作成 を参照してください。
  4. AppID をコピーし、Experience アプリのルート ディレクトリ (例:<.zip ファイル ルート>\cdn\0\config.json) にある config.json ファイルを開きます。
  5. attributes オブジェクトの下に clientId プロパティを作成します。
  6. config.json ファイルの clientId プロパティに AppID を貼り付けます。再度ファイルを保存します。
"attributes": {
    "portalUrl": "https://exb.maps.arcgis.com",
    "clientId": "EXBAPPsag0XSRtpj"
  },

server/app name/index.html にアクセスすることでアプリを利用することができます。

デプロイの自動化

Experience Builder サーバーを実行せずにターミナルからアプリの ZIP エクスポートを自動で生成するには、zipApp コマンドを使用します。これは自動デプロイのための DevOps ワークフローでよく使用されます。

ターミナルで Experience Builder (Developer Edition) がインストールされた解凍済みのルート ディレクトリ (“client” フォルダーと “server” フォルダーが含まれるディレクトリ) を参照し、次のコマンドを実行します。

node -e "require('./server/src/middlewares/dev/apps/app-download.js').zipApp('0', 'app.zip', 'my_client_id');"
  • ‘0’ はエクスポートしたいアプリの ID に置き換えてください。
  • ‘app.zip’ は生成したい ZIP ファイルの名前に置き換えてください。
  • my_client_id を ArcGIS Online または ArcGIS Enterprise の有効な AppID で置き換えます。詳細については、ArcGIS Online/ArcGIS Enterprise を使用した Client ID の作成 を参照してください。
  • 環境変数 NODE_ENVproduction に設定されていることを確認し、最小化された (より小さな) ファイルを生成する production ビルドを作成します。

サービス ワーカー キャッシュ

Experience Builder ではサービス ワーカーを使用してアセットのキャッシュ先読みし、アプリケーションのロード時間を改善します。デプロイ済みのアプリケーションのソース コード、config.json、またはその他の変更の更新が必要な場合は、Experience Builder (Developer Edition) で更新を行い、アプリケーションを再ダウンロードしてデプロイできます。ただし、ダウンロード パッケージを直接更新する必要がある場合は、次の手順を実行してサービス ワーカー キャッシュを更新する必要があります。

  1. app ディレクトリで、cdn/0cdn/1 にリネームします。
  2. アプリに必要なソース コードの修正や変更を行います。
  3. アプリケーションのルート フォルダーで index.html を開きます。
    • <base href="./cdn/0/"/><base href="./cdn/1/"/> に変更します。
    • buildNumber = '0'buildNumber = '1' に変更します。

より良いパフォーマンスのためのキャッシュ ヘッダーの推奨設定は以下のとおりです。

  • index.html を 1 分など非常に短い期間キャッシュするか、キャッシュしない。
  • cdn フォルダーを 1 年間など長期間キャッシュする。