このページの内容は Apigee と Apigee ハイブリッドに該当します。
Apigee Edge のドキュメントを表示する。
Apigee Emulator はカスタマイズされた Docker イメージであり、ローカル開発環境に API プロキシをデプロイしてテストするためにデベロッパーに一般公開されています。Docker イメージは gcr で定期的に公開されています。
最初の API プロキシをデプロイしてテストする準備ができたら、エミュレータ セクションを使用して、エミュレータのバージョンと、セットアップされたエミュレータのライフサイクルを表示して管理する必要があります。
このセクションでは次の操作を行うことができます。
インストールされているエミュレータのバージョン、エミュレータのバージョンごとに作成されたコンテナ(Docker やランタイムの情報など)、コントロール ポート、トラフィック ポートを確認します。
Apigee Emulator の管理で説明されているように、Apigee Emulator コンテナのビューを追加、削除、起動、停止、リセット、更新します。
デプロイされたアプリケーションを表示します(環境のデプロイを参照)。
アクティブなテストリソースを表示します(Apigee Emulator へのテストリソースのエクスポートを参照)。
Apigee Emulator の管理
以下のセクションで説明するように、Apigee Emulator を管理します。
エミュレータ バージョンの選択
デフォルトでは、emulator フォルダには安定版が表示されます。ただし、要件に応じて別のバージョンを選択できます。
次のいずれかの方法で Apigee Emulator のバージョンのリストを表示し、Tag 値をメモします。
- Google Artifact Registry を使用する(ドキュメントとユーザー インターフェースを参照)。
- Docker Hub を使用する。
Apigee Emulator のバージョンを Cloud Code 拡張機能に追加するには、
[Manage] > [Settings] をクリックし、apigee emulators
を検索します。[Add item] をクリックします。
手順 1 で取得したタグの値を入力します。たとえば、
1.10.0
や、google/apigee-emulator:1.10.0
です。[OK] をクリックします。
新しく追加したエミュレータが emulator フォルダに表示されます。
Apigee Emulator のインストール
Apigee Emulator をインストールするには:
ワークスペースの emulators フォルダを開きます。
インストールする Apigee Emulator のバージョンにカーソルを合わせます。
をクリックします。
Apigee Emulator のコンテナの追加の手順に沿ってコンテナを追加します。
選択した Apigee Emulator バージョンの最新イメージがインストールされます。インストールが完了すると、「Emulator installed successfully
」というメッセージが表示され、Apigee Emulator コンテナのステータスが「Ready」に変わります。
Apigee Emulator のコンテナの追加
UI を使用して Apigee Emulator のコンテナを追加するには:
emulators フォルダを開きます。
コンテナを追加する Apigee Emulator にカーソルを合わせます。
[+] をクリックします。
Apigee Emulator コンテナの一意の名前を入力し、Enter キーを押します。英数字、ダッシュ(-)、アンダースコア(_)を入力します。
Apigee Emulator コンテナのコントロール ポートとして使用する数値を入力し、Enter キーを押します。 コントロール ポートは、コンテナ間で一意である必要があります。デフォルトでは
8080
に設定されます。Apigee Emulator コンテナのトラフィック ポートとして使用する数値を入力し、Enter キーを押します。トラフィック ポートはコンテナ間で一意である必要があります。デフォルトでは
8998
に設定されます。
コンテナが追加されます。
Apigee Emulator のステータス情報の表示
以下のセクションで説明するように、Apigee Emulator のステータス情報を確認します。
UI の使用
Docker やランタイムの情報を含む Apigee Emulator のステータス情報を表示するには、エミュレータ セクションでコンテナを開きます。使用している Apigee Emulator のバージョンに対応する情報が表示されます。
Docker CLI の使用
Apigee Emulator とその構成済みポートのコンテナ ステータス情報を表示するには、[Terminal] タブで docker ps
を実行します。レスポンスの例を次に示します。実際に表示されるレスポンスは、使用している Apigee Emulator のバージョンによって異なります。
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 33756b8c5c5b ...apigee-emulator:1.11.0 "/usr/bin…" 10 hours ago Up 10 hours 7000-7001/tcp, 0.0.0.0:8080->8080/tcp... apigee-emulator
Apigee ランタイム Docker コンテナのカスタマイズもご覧ください。
Apigee Emulator の起動
以下のセクションで説明するように、Apigee Emulator を起動します。
UI の使用
Apigee Emulator を起動するには、起動するコンテナにカーソルを合わせて、 をクリックします。
Docker CLI の使用
Apigee Emulator を起動するには、[Terminal] タブで docker start CONTAINER_NAME
を実行します。
ステータスが Ready
に設定されます。
Apigee ランタイム Docker コンテナのカスタマイズもご覧ください。
Apigee Emulator のリセット
以下のセクションの説明に従い、Apigee Emulator をリセットして、すべてのデプロイとエクスポートされたテストリソースを削除します。
UI の使用
Apigee Emulator をリセットするには、エミュレータ セクションにある Apigee Emulator コンテナにカーソルを合わせて、 をクリックします。
Apigee Emulator はリセットされ、ステータスが Ready
に設定されます。
[Output] タブに次の情報が表示されます。
Resetting the Apigee Emulator Reset completed
Apigee ランタイム Docker コンテナのカスタマイズもご覧ください。
Apigee Emulator の再起動
Apigee Emulator を再起動するには、[Terminal] タブで docker restart CONTAINER_NAME
を実行します。例: docker restart MyContainer
Apigee Emulator の更新
Apigee Emulator が最新バージョンと同期されていない場合は、次のセクションの説明に従って、UI または Docker CLI を使用してインストール済みバージョンを更新できます。
UI の使用
Apigee Emulator を更新するには、エミュレータ セクションにある Apigee Emulator にカーソルを合わせて、 をクリックします。
Docker CLI の使用
Apigee Emulator を更新するには、[Terminal] タブで、最新の適切なバージョンを使用して次の Docker コマンドを実行します。
docker ps
を実行してイメージ名を取得します。例:gcr.io/apigee-release/hybrid/apigee-emulator:EMULATOR_VERSION
docker pull IMAGE_NAME
を実行して、Apigee Emulator のインストール イメージを更新します。例:docker pull gcr.io/apigee-release/hybrid/apigee-emulator:EMULATOR_VERSION
Apigee Emulator が更新され、Emulator version is up to date
というメッセージが表示されます。
Apigee ランタイム Docker コンテナのカスタマイズもご覧ください。
Apigee Emulator の停止
次のセクションの説明に従って、UI または Docker CLI を使用して Apigee Emulator を停止します。
UI の使用
Apigee Emulator を停止するには、エミュレータ セクションにある Apigee Emulator コンテナにカーソルを合わせて、 をクリックします。
Docker CLI の使用
Apigee Emulator を停止するには、[Terminal] タブで docker stop CONTAINER_NAME
を実行します。
Apigee Emulator が停止し、ステータスが Not
running
に変わります。
Apigee ランタイム Docker コンテナのカスタマイズもご覧ください。
Apigee Emulator のコンテナの削除
次のセクションの説明に従って、UI または Docker CL を使用して Apigee Emulator のコンテナを削除します。
UI の使用
Apigee Emulator を削除するには、エミュレータ セクションにある Apigee Emulator コンテナにカーソルを合わせて、 をクリックします。
Docker CLI の使用
Apigee Emulator のコンテナを削除するには、[Terminal] タブで次の Docker コマンドを実行します。
docker stop CONTAINER_NAME
を実行して、Apigee Emulator のインストール イメージを停止します(まだ停止していない場合)。例:docker stop MyContainer
docker rm CONTAINER_NAME
を実行して、Apigee Emulator のインストール イメージを停止します。例:docker rm MyContainer
コンテナが削除されます。
Apigee ランタイム Docker コンテナのカスタマイズもご覧ください。
Apigee ランタイム Docker コンテナのカスタマイズ
Apigee Emulator インスタンスの制御に使用される Docker コマンドラインは、次のオプションを使用してカスタマイズできます。
オプション | 説明 |
---|---|
additionalArguments |
1 つ以上の引数を追加します。引数は、指定したとおりに docker run コマンドに追加されます。デフォルトは "" (なし)です。 |
detached |
コンテナの実行中に --detached オプションを使用するかどうかを制御します。デフォルトは true です。 |
dns |
DNS サービスの説明に沿って、DNS サービスの -dns フラグを制御します。デフォルトは 8.8.8.8 です。 |
environmentVariables |
オプションの説明に沿って、docker run コマンドに環境変数を追加します。指定した場合、値は -e を使用して docker run コマンドに追加されます。デフォルト リストには "XTERM": "xterm-256color" が含まれます。
|
labels |
コンテナに付加する 1 つ以上のラベルを追加します。ラベルは、-l を使用して docker run コマンドに追加されます。デフォルトは none です。 |
privileged |
コンテナの実行中に --privileged オプションを使用するかどうかを制御します。デフォルトは true です。 |
volumes |
コンテナにマウントするボリュームを 1 つ以上追加します。ボリュームは、-v を使用して docker run コマンドに追加されます。デフォルトは none です。 |
Apigee ランタイム Docker コンテナをカスタマイズするには:
この機能は Insiders ビルド(v1.21.0 以降)の一部として利用できます。Insider ビルドのインストールの説明に沿って Insiders ビルドをインストールします。
[Manage] > [Settings] をクリックし、apigee docker
を検索します。[Cloudcode] > [Apigee: Docker Options] で、[Edit in settings.json] をクリックします。次のように、カスタマイズ可能なオプションが
settings.json
ファイルに表示されます。"cloudcode.apigee.dockerOptions": { "environmentVariables": { "XTERM": "xterm-256-color" }, "dns": "8.8.8.8", "detached": true "privileged": true, "labels": {}, "volumes": {}, "additionalArguments":"" }
オプションを編集してファイルを保存します。
サービス アカウント ベースの認証をサポートするように Apigee Emulator をカスタマイズする
Google Cloud サービス アカウント ベースの認証に依存するプロキシをテストする場合、Apigee Emulator は Google サービス アカウント キーにアクセスする必要があります。手順に沿って、サービス アカウント ベースの認証をサポートするように Apigee Emulator を構成します。
サービス アカウント キーの作成とダウンロード
サービス アカウント トークン作成者ロールを持つ Google Cloud サービス アカウントを作成します。これは、Apigee Emulator がサービス アカウントをサポートするために必要です。サービス アカウント キーを作成するの説明に沿って、サービス アカウント キーを作成します。
キーをローカル ファイル システムにダウンロードして、Apigee Emulator に提供できるようにします。
Apigee Emulator の構成
Apigee Emulator の設定を構成するには:
Apigee ランタイム Docker コンテナのカスタマイズの説明に沿って、Docker オプションを開きます。
Docker オプションの
volumes
セクションで新しいボリュームを追加し、ダウンロードしたサービス アカウント キーのパスをコンテナで使用できるようにします。鍵がパス/opt/apigee/keys/apigee-sa-key.json
にダウンロードされた場合、次の設定により、/opt/apigee/keys
のコンテンツがコンテナ内のパス/emulator/keys
にマウントされます。"volumes": { "/opt/apigee/keys":"/emulator/keys" }
Docker オプションの
environmentVariables
セクションに、マウントされたパス内のファイルを指すGOOGLE_APPLICATION_CREDENTIALS
変数を追加します。"environmentVariables": { "GOOGLE_APPLICATION_CREDENTIALS":"/emulator/keys/apigee-sa-key.json" }
設定を保存して、テストに使用できる新しいコンテナ インスタンスを作成します。
次の例は、Google サービス アカウント キーを Apigee Emulator に関連付ける方法を示しています。
"cloudcode.apigee.dockerOptions": {
"environmentVariables": {
"XTERM": "xterm-256-color",
"GOOGLE_APPLICATION_CREDENTIALS":"/emulator/keys/apigee-sa-key.json"
},
"dns": "8.8.8.8",
"detached": true
"privileged": true,
"labels": {},
"volumes": {
"/opt/apigee/keys":"/emulator/keys"
},
"additionalArguments":""
}
HTTP 転送プロキシをサポートするように Apigee Emulator を構成する
多くの場合、プロキシに関連付けられたバックエンド ターゲットにアクセスするには、HTTP 転送プロキシを使用する必要があります。Apigee Emulator は、環境変数 FORWARD_PROXY
を使用して、ターゲットに接続する際に転送プロキシを使用するように構成できます。
Apigee Emulator の設定を構成するには:
Apigee ランタイム Docker コンテナのカスタマイズの説明に沿って Docker オプションを開きます。
Docker オプションの
environmentVariables
セクションに、HTTP URL として転送プロキシ アドレスを指すFORWARD_PROXY
変数を追加します。"environmentVariables": { "FORWARD_PROXY":"http://proxy_host:proxy_port" }
設定を保存し、テスト用の新しいコンテナ インスタンスを作成します。