API Gateway と Cloud Run のスタートガイド
このページでは、API Gateway を設定して Cloud Run バックエンド サービスを管理、保護する方法について説明します。
タスクリスト
次のタスクリストを参照しながら、チュートリアルを実施してください。Cloud Run バックエンド サービス用の API Gateway をデプロイするには、すべてのタスクを行う必要があります。
- Google Cloud プロジェクトを作成または選択します。
- 独自の Cloud Run をデプロイしていない場合は、サンプルのサービスをデプロイします。始める前にのステップ 7 をご覧ください。
- 必要な API Gateway サービスを有効にします。
- API を記述する OpenAPI 説明を作成し、Cloud Run バックエンド サービスへのルートを構成します。API 構成の作成をご覧ください。
- API 構成を使用して API Gateway をデプロイします。API ゲートウェイのデプロイをご覧ください。
- サービスに対するアクティビティを追跡します。API の活動を追跡するをご覧ください。
- Google Cloud アカウントに課金されないようにします。 クリーンアップをご覧ください。
始める前に
Google Cloud コンソールで [ダッシュボード] ページに移動し、 Google Cloud プロジェクトを選択または作成します。
プロジェクトに対して課金が有効になっていることを確認します。
このチュートリアルで使用するプロジェクト ID をメモします。このページでは以降、このプロジェクト ID を PROJECT_ID として記載します。
Google Cloud CLI をダウンロードしてインストールします。
gcloudコンポーネントを更新します。gcloud components update
デフォルト プロジェクトを設定します。PROJECT_ID は、 Google Cloud プロジェクト ID に置き換えます。
gcloud config set project PROJECT_ID
独自の Cloud Run サービスをデプロイしていない場合は、クイックスタート: 事前にビルドされたサンプル コンテナのデプロイの手順に沿って Google Cloud プロジェクトを選択または作成し、サンプル バックエンドをデプロイします。アプリの URL と、アプリがデプロイされているリージョンとプロジェクト ID をメモしておきます。
必要なサービスを有効にする
API Gateway では、次の Google Cloud サービスを有効にする必要があります。
| 名前 | サービス名 |
|---|---|
| API Gateway API | apigateway.googleapis.com |
| Service Management API | servicemanagement.googleapis.com |
| Service Control API | servicecontrol.googleapis.com |
必要なサービスを有効にするには:
Google Cloud コンソール
Google Cloud コンソールで、[API とサービス> API ライブラリ] ページに移動します。
- [API ライブラリ] ページの検索バーに、必要な API 名を入力します。
- 検索結果で、API ページを選択します。
- API ページで、[有効にする] をクリックします。
- 上記の表に記載されているサービスごとに、この手順を繰り返します。
Google Cloud CLI
次のコマンドを使用して、サービスを有効にします。
gcloud services enable apigateway.googleapis.comgcloud services enable servicemanagement.googleapis.comgcloud services enable servicecontrol.googleapis.com
gcloud サービスの詳細については、gcloud サービスをご覧ください。
API 構成を作成する
API ゲートウェイを使用してデプロイされた Cloud Run バックエンドへのトラフィックを管理する前に、API 構成が必要です。
特殊なアノテーションを含む OpenAPI 説明を使用して API 構成を作成し、選択した API Gateway の動作を定義できます。API Gateway がアプリを呼び出すために必要な情報を取得できるよう、このドキュメントには各 Cloud Run アプリの URL を設定した Google 固有のフィールドも追加する必要があります。
サポートされている OpenAPI 拡張機能の詳細については、以下をご覧ください。
API 構成を作成するには:
openapi-run.yamlという名前のテキスト ファイルを作成します便宜上、このページでは OpenAPI の説明をこのファイル名で表記していますが、必要に応じて別の名前を指定することもできます。- 次のファイルの内容を
openapi-run.yamlファイルにコピーします。OpenAPI 2.0
# openapi-run.yaml swagger: '2.0' info: title: API_ID optional-string description: Sample API on API Gateway with a Cloud Run backend version: 1.0.0 schemes: - https produces: - application/json x-google-backend: address: APP_URL paths: /assets/{asset}: get: parameters: - in: path name: