コンテナ イメージ設定の構成

Kubernetes でアプリケーションを実行またはデバッグするには、Develop on KubernetesRun on Kubernetes の実行構成で構成することにより、プロジェクトのコンテナ イメージ リポジトリを定義する必要があります。

IDE で Google Cloud にログインし、デフォルト プロジェクトが定義されている場合、Cloud Code はデフォルトのコンテナ イメージ リポジトリ(gcr.io/{project_id})を自動的に使用します。ここで、{project_id} はデフォルト プロジェクトを参照します。

コンテナ イメージの保存場所の指定

プロジェクト イメージが push されようとしているイメージ リポジトリを更新する場合は、次の手順に従います。

  1. ナビゲーション バーの [Run/Debug configuration] セレクタまたはトップレベルのメインメニューで [Run] > [Edit Configurations...] に移動します。次に、[Develop on Kubernetes] または [Run on Kubernetes] > [Where are the container images stored?] の順にクリックします。

  2. [Where are the container images stored?] フィールドに値を入力します。

    実行構成のデフォルトのイメージ リポジトリが「gcr.io/」形式で設定され、現在のプロジェクトとアクティブなクラスタに基づいてオートコンプリート オプションが表示される。

    • GKE を使用している場合は、次の形式でイメージを Container Registry に保存できます。

      gcr.io/PROJECT_ID

      PROJECT_ID は、クラスタを含む Google Cloud プロジェクトの ID です。

    • GKE を使用している場合は、次の形式を使用してイメージを Artifact Registry に保存することもできます。

      REGION-docker.pkg.dev/PROJECT_ID/REPO_NAME

      REGION はリポジトリでサポートされているリージョンです。PROJECT_ID はクラスタが含まれている Google Cloud プロジェクトの ID、REPO_NAME はリポジトリの名前です。

    • Docker Hub にイメージを保存することを選択する場合は(非公開の Docker Hub リポジトリを使用している場合は適切に認証されるようにしてください)、次の形式を使用します。

      docker.io/ACCOUNT

      ACCOUNT は Docker Hub アカウントの名前です。

イメージ名の作成

生成されるイメージ名は、指定したデフォルト イメージ リポジトリと、プロジェクトの Kubernetes リソースのイメージ名を連結した名前となります。「java-guestbook」の例の場合は、GCR イメージ リポジトリがデフォルトのイメージ リポジトリで、生成される完全なイメージ名は gcr.io/{project_id}/java-guestbook になります。

一般的なイメージ リポジトリの形式

次に示すのは、一般的なレジストリの場合にコンテナ イメージの保存場所を指定する方法の例です。

  • Docker Hub: docker.io/{account}
  • Google Container Registry: gcr.io/{project_id}
  • Google Artifact Registry: {region}-docker.pkg.dev/{project_id}/{repository_name}
  • AWS Elastic Container Registry(ECR): {aws_account_id}.dkr.ecr.{region}.amazonaws.com/{my_app}
  • Azure Container Registry(ACR): {my_acr_name}.azurecr.io/{my_app}