リビジョンを管理する

サービスにデプロイするか、サービスの構成を変更すると、新しいリビジョンが作成されます。このリビジョンは変更できません。

リビジョンには次の考慮事項が適用されます。

  • 新しいリビジョンが、すべてのトラフィックを受信するか、まったく受信しないか、またはいくつかを受信するかを指定できます。また、新しいリビジョンを段階的にロールアウトするだけでなく、トラフィックを複数のリビジョン間で分割することや、リビジョンからロールバックすることもできます。詳細については、ロールバック、段階的なロールアウト、トラフィックの移行をご覧ください。
  • 必要に応じて、リビジョンタグを使用して、トラフィックを処理しないリビジョンをテストできます。
  • 手動でリビジョンを削除する必要はありませんが、必要であれば削除することもできます。
  • 提供されていないリビジョンはリソースを消費せず、料金も発生しません。
  • サービスごとに最大 1,000 個のリビジョンがあります。この上限を超えると、古いリビジョンは自動的に削除されます。
  • リビジョン サフィックスは自動的に割り当てられます。gcloud CLI の -revision-suffix パラメータを使用すると、独自のバージョン サフィックスを使用できます。

サービスのリビジョンのリストを表示する

コンソール

プロジェクト内のリビジョンを一覧表示するには:

  1. Cloud Run に移動します

  2. サービスリストでサービスを見つけてクリックします。

  3. [リビジョン] タブをクリックして、そのサービスの現在のリビジョンのリストを表示します。

    リビジョンのリスト

コマンドライン

特定のサービスのリビジョンを一覧表示するには:

  1. プロジェクトで利用可能なサービスのリストからサービス名を探します。

    gcloud run services list
  2. 見つかったサービスのすべてのリビジョンを取得するには、次のコマンドを使用します。

    gcloud run revisions list --service SERVICE

    SERVICE は、実際のサービス名に置き換えます。

Cloud Code

Cloud Code でリビジョンを一覧表示するには、IntelliJVisual Studio Code に関する Cloud Run Explorer ガイドをご覧ください。

クライアント ライブラリ

コードからリビジョンのリストを表示するには:

REST API

リビジョンのリストを表示するには、GET HTTP リクエストを Cloud Run Admin API の revisions エンドポイントに送信します。

curl の使用例を次に示します。

curl -H "Content-Type: application/json" \
  -H "Authorization: Bearer ACCESS_TOKEN" \
  -X GET \
  -d '' \
  https://run.googleapis.com/v2/projects/PROJECT_ID/locations/REGION/services/SERVICE-NAME/revisions

次のように置き換えます。

  • ACCESS_TOKEN は、リビジョンを表示する IAM 権限を持つアカウントの有効なアクセス トークンに置き換えます。たとえば、gcloud にログインしている場合は、gcloud auth print-access-token を使用してアクセス トークンを取得できます。Cloud Run コンテナ インスタンスから、コンテナ インスタンス メタデータ サーバーを使用してアクセス トークンを取得できます。
  • SERVICE-NAME は、サービスの名前に置き換えます。
  • REGION は、サービスの Google Cloud リージョンに置き換えます。
  • PROJECT-ID は、Google Cloud プロジェクト ID に置き換えます。

リビジョンの詳細を表示する

コンソール

プロジェクトのリビジョンの詳細を表示するには:

  1. Cloud Run に移動します

  2. サービスリストでサービスを選択します。

  3. [リビジョン] タブをクリックして、そのサービスの現在のリビジョンのリストを表示します。

  4. 必要なサービスのリビジョンを選択します。

  5. 右端の [詳細] パネルで、デプロイされたコンテナ イメージの URL、割り当てられたメモリ量、環境変数などのリビジョン固有の情報と、可能であればビルドとソース リポジトリの情報を確認します。

    画像

コマンドライン

プロジェクトのリビジョンの詳細を表示するには:

  1. プロジェクトで利用可能なサービスのリストからサービス名を探します。

    gcloud run services list

  2. 見つかったサービスのすべてのリビジョンを取得するには、次のコマンドを使用します。

    gcloud run revisions list --service SERVICE
    SERVICE は、実際のサービス名に置き換えます。

  3. 特定のリビジョンに関する詳細を表示するには、次のコマンドを使用します。

    gcloud run revisions describe REVISION
    REVISION は、詳細を確認するリビジョンの名前に置き換えます。

    --format フラグを使用して出力をフォーマットできます。たとえば、YAML としてフォーマットします。

    gcloud run revisions describe REVISION --format yaml

Cloud Code

Cloud Code でリビジョンの詳細を表示するには、IntelliJVisual Studio Code に関する Cloud Run Explorer ガイドをご覧ください。

クライアント ライブラリ

コードからリビジョンの詳細を表示するには:

REST API

リビジョンの詳細を表示するには、GET HTTP リクエストを Cloud Run Admin API の revisions エンドポイントに送信します。

curl の使用例を次に示します。

curl -H "Content-Type: application/json" \
  -H "Authorization: Bearer ACCESS_TOKEN" \
  -X GET \
  -d '' \
  https://run.googleapis.com/v2/projects/PROJECT_ID/locations/REGION/services/SERVICE-NAME/revisions/REVISION-NAME

次のように置き換えます。

  • ACCESS_TOKEN は、サービスの詳細を表示する IAM 権限を持つアカウントの有効なアクセス トークンに置き換えます。たとえば、gcloud にログインしている場合は、gcloud auth print-access-token を使用してアクセス トークンを取得できます。Cloud Run コンテナ インスタンスから、コンテナ インスタンス メタデータ サーバーを使用してアクセス トークンを取得できます。
  • SERVICE-NAME は、サービスの名前に置き換えます。
  • REVISION-NAME は、リビジョンの名前に置き換えます。
  • REGION は、サービスの Google Cloud リージョンに置き換えます。
  • PROJECT-ID は、Google Cloud プロジェクト ID に置き換えます。

最新でないリビジョンのステータスが RETIRED になっている場合、そのリビジョンに必要なインフラストラクチャが Cloud Run ですでに廃止されています。

[詳細] パネルのビルドとソース リポジトリの情報の概要

Artifact Analysis API が有効で、コンテナが Cloud Build でビルドされている場合、ビルド情報は [詳細] パネルに表示されます。

また、Cloud Build トリガーを使用してコンテナをビルドした場合は、[詳細] パネルにソース リポジトリの情報も合わせて表示されます。

リビジョンを削除する

リビジョンを削除する一般的なユースケースは、特定のリビジョンが誤って使用されないようにする場合です。

次のリビジョンは削除できません。

  • トラフィックを受信できるリビジョン
  • サービスの唯一のリビジョン
  • サービスの最新リビジョン

リビジョンを削除しても、このリビジョンで使用されているコンテナ イメージは Container Registry または Artifact Registry から自動的に削除されません。コンテナ イメージをレジストリから削除するには、Container Registry または Artifact Registry の削除手順を参照してください。

リビジョンを削除すると元に戻すことはできません。

コンソールまたは、コマンドラインのいずれかを使用できます。

Console

リビジョンを削除するには:

  1. Cloud Run に移動します

  2. サービスリストでサービスを見つけてクリックします。

  3. [リビジョン] タブをクリックして、そのサービスの現在のリビジョンのリストを表示します。

  4. 削除するサービス リビジョンを見つけます。

  5. リビジョンの左側にある縦に並んだ 3 つの点のアイコンをクリックし、[削除] メニューを表示します。

    リビジョン - 削除

  6. [削除] をクリックしてリビジョンを削除します。

コマンドライン

リビジョンを削除するには、次のコマンドを使用します。

gcloud run revisions delete REVISION

REVISION は、削除するリビジョンの名前に置き換えます。

クライアント ライブラリ

コードからリビジョンを削除するには:

REST API

リビジョンを削除するには、Cloud Run Admin API の revisions エンドポイントDELETE HTTP リクエストを送信します。

curl の使用例を次に示します。

curl -H "Content-Type: application/json" \
  -H "Authorization: Bearer ACCESS_TOKEN" \
  -X DELETE \
  -d '' \
  https://run.googleapis.com/v2/projects/PROJECT_ID/locations/REGION/services/SERVICE-NAME/revisions/REVISION-NAME

次のように置き換えます。

  • ACCESS_TOKEN は、サービスを削除する IAM 権限を持つアカウントの有効なアクセス トークンに置き換えます。たとえば、gcloud にログインしている場合は、gcloud auth print-access-token を使用してアクセス トークンを取得できます。Cloud Run コンテナ インスタンスから、コンテナ インスタンス メタデータ サーバーを使用してアクセス トークンを取得できます。
  • SERVICE-NAME は、サービスの名前に置き換えます。
  • REVISION-NAME は、リビジョンの名前に置き換えます。
  • REGION は、サービスの Google Cloud リージョンに置き換えます。
  • PROJECT-ID は、Google Cloud プロジェクト ID に置き換えます。

次のステップ

リビジョンをデプロイすると、次の操作が可能になります。