Cloud Run のデプロイ タイプとリソースモデルで説明されているように、Cloud Run には複数のデプロイ オプションとデプロイ方法があります。このページでは、さまざまなデプロイ タイプと、Cloud Run サービスのデプロイに使用できるツールとインターフェースの概要について説明します。
デプロイタイプ
Cloud Run サービスにデプロイする場合は、次のオプションから選択できます。
コンテナを開発する
コンテナ イメージを使用して Cloud Run にデプロイするには、アプリケーション コードとその依存関係をコンテナ レジストリにパッケージ化してから、デプロイを実行する必要があります。
- デプロイするコンテナがすでに用意されている場合は、コンテナ イメージのデプロイをご覧ください。
ソースコードからデプロイする
コンテナ イメージを手動でビルドしなくても、ローカル ディレクトリまたはリポジトリからコードを直接デプロイできます。
- ソースコードからサービスをデプロイする:
gcloud run deploy --sourceを使用してソースコードをパッケージ化します。Google Cloud の Buildpack を使用して Cloud Build でデプロイするか(デフォルト)、Cloud Build のステップをバイパスして事前構築済みのアーティファクトを直接デプロイして(プレビュー)、デプロイを高速化するかを選択できます。 - Cloud Run functions をデプロイする: Eventarc イベントなどのGoogle Cloud イベントに応じてトリガーされる単一目的のコード スニペットをデプロイします。関数は、Google Cloud の Buildpack と Cloud Build を使用してコンテナ イメージを構築し、デプロイします。
- コード、依存関係、システム ライブラリをコンテナにパッケージ化する必要がある場合は、Cloud Run にデプロイする前に次のページをご覧ください。
- コードをコンテナ化する: 標準の
Dockerfileを使用して環境構成を宣言するか、Google Cloud の Buildpack を使用して直接ビルドします。 - ソースをコンテナにビルドする: Docker を使用してローカルで、または Cloud Build を使用してクラウドでコンテナ イメージをビルドし、Artifact Registry などのサポートされているレジストリにイメージを push します。
- コードをコンテナ化する: 標準の
git からの継続的デプロイ
リポジトリに変更を push したときに新しいリビジョンをビルドしてデプロイするように Cloud Run を設定するには、リポジトリから継続的にデプロイするをご覧ください。
Cloud Build トリガーまたは Developer Connect を使用して、Google Cloud コンソールで GitHub、GitLab、Bitbucket リポジトリを直接接続できます。
デプロイ方法とツール
次のいずれかのコアメソッドとインターフェースを使用して、Cloud Run サービスをデプロイできます。
- Google Cloud コンソール: Google Cloud コンソールのインタラクティブなグラフィカル ユーザー インターフェースを使用して、コンテナ イメージと関数をデプロイするか、継続的デプロイを手動で構成します。 Google Cloud コンソールでは、構成設定を行う際に役立つツールチップ、フォーム、即時フィードバックが提供されます。
- Google Cloud CLI:
gcloud run deployコマンドを使用して、スクリプト作成とコンテナ イメージの高速コマンドライン デプロイを有効にします。この方法はほとんどのデプロイ タイプに適しており、1 つのコマンドでローカル ソースコードをビルドしてデプロイするのに便利です。 - YAML: Cloud Run サービスの YAML ファイルを使用して、Knative 準拠の宣言型構成ファイルでサービス仕様をマニフェストします。次に、
gcloud run services replace service.yamlを使用して変更を適用します。このアプローチにより、構成が信頼できる情報源としてリポジトリに存在する GitOps 継続的デプロイ モデルが可能になります。 - Terraform: 標準の Google Cloud プロバイダ リソース(
google_cloud_run_v2_service)を使用して、データベース、ロードバランサ、セキュリティ ポリシーなどの他のクラウド リソースとともに、サーバーレス コンピューティング インフラストラクチャを決定論的にデプロイして更新します。 - クライアント ライブラリ: Go、Java、Node.js、Python、Ruby、PHP、.NET などの言語用の Cloud クライアント ライブラリを使用して、デプロイをプログラムで構成してトリガーします。
- REST API: HTTP オペレーションを使用して REST API エンドポイントを直接呼び出し、カスタム デプロイ システムと統合します。
- Compose を使用してサービスをデプロイする: 標準の
compose.yamlファイルを使用して、複数のコンテナ(バックエンド サービスやサイドカーなど)でアプリケーション スタックを定義し、gcloud run deploy --composeコマンドを使用して Cloud Run にまとめてデプロイします。 - リモート MCP サーバーを使用する: 生成 AI アシスタントとコード エージェントをリモートの Model Context Protocol(MCP)サーバーに接続して、公開 Cloud Run サービスと非公開 Cloud Run サービスをデプロイ、検査、管理できるようにします。
- デプロイのプレビュー: Cloud Build を使用してデプロイ プロセスを自動化します。