コンテナのビルド

Cloud Run for Anthos は、コンテナ契約を遵守している限り、コンテナ イメージのビルドに対応しているツールでビルドされたコンテナ イメージを受け入れます。コードは PORT 環境変数で定義されたポートで HTTP リクエストをリッスンする必要があります。この PORT 環境変数は、Cloud Run for Anthos によってコンテナに自動的に挿入されます。

このページでは、コンテナ イメージの作成方法をいくつか説明します。

  • Dockerfile を使用する
  • Buildpacks を使用する

Dockerfile を使用してビルドする

Dockerfile を使用する場合は、次のいずれかの方法でビルドできます。

  • Cloud Build を使用してビルドする
  • Docker を使用してローカルでビルドする

Cloud Build でビルドする

Google Cloud でイメージをビルドするには、次のようにします。

  1. ソースと Dockerfile を含むフォルダに移動します。

  2. 次のコマンドを実行します。

    gcloud builds submit --tag IMAGE_URL

    IMAGE_URL は、コンテナ イメージへの参照(gcr.io/cloudrun/hello など)に置き換えます。

Cloud Build の詳細な手順については、Cloud Run for Anthos へのデプロイをご覧ください。

ビルドのパフォーマンスを向上させるヒントについては、ビルドの高速化をご覧ください。

ローカルにビルドして Docker で push する

Docker をローカルにインストールしている場合は、Cloud Build や Buildpacks の代わりに docker build を使用できます。

Docker を使用してソースからコンテナ イメージをビルド(コンテナ化)する前に、ソースと Dockerfile を用意する必要があります。次の手順では、Container Registry をイメージ レジストリとして使用します。

Docker でコンテナ イメージをビルドするには:

  1. ソースと Dockerfile を含むフォルダに移動します。

  2. 次のコマンドを実行します。

    docker build . --tag IMAGE_URL

    IMAGE_URL は、コンテナ イメージへの参照(gcr.io/cloudrun/hello など)に置き換えます。

  3. Google Cloud CLI を使用して Container Registry へのリクエストを認証するように Docker を構成していない場合は、次のコマンドを実行して構成を行います。

    gcloud auth configure-docker

    Docker でイメージの pull と push を行う前に、この設定を行う必要があります。この操作は初回のみ必要です。

  4. コンテナ イメージを Container Registry に push します。

    docker push IMAGE_URL

    IMAGE_URL は、コンテナ イメージへの参照(gcr.io/cloudrun/hello など)に置き換えます。

このプロセスからローカル ファイルを除外するには、.dockerignore 構成ファイルの手順を行います。

Buildpack を使用してビルドする

Buildpacks の詳細については、Buildpacks のウェブサイトをご覧ください。 Google では、Cloud Run for Anthos を含む Google Cloud コンテナ プラットフォームで実行するように設計されたコンテナ イメージにソースコードをビルドする CNCF 互換の Buildpacks を提供しています。

現在、次のプラットフォームがサポートされています。

  • Go
  • Node.js
  • Python
  • Java
  • .NET Core

Cloud Build で Buildpack を使用してビルドする

Buildpack でビルドするには:

  1. ソースを含むフォルダに移動します。

  2. 次のコマンドを実行します。

    gcloud builds submit --pack image=IMAGE_URL

    IMAGE_URL をコンテナ イメージ URL(たとえば、gcr.io/myproject/myservice)で置き換えます。

  3. ビルドが完了するまで待ちます。

pack コマンドラインで Buildpack を使用してビルドする

pack コマンドを使用してビルドするには:

  1. まだインストールしていない場合は、Docker をインストールします。

  2. Google Cloud CLI を使用して Container Registry へのリクエストを認証するように Docker を構成していない場合は、次のコマンドを実行して構成を行います。

    gcloud auth configure-docker

    Docker でイメージの pull と push を行う前に、この設定を行う必要があります。この操作は初回のみ必要です。

  3. まだインストールしていない場合は、pack をインストールします。

  4. ソースを含むフォルダに移動します。

  5. 次のコマンドを実行してビルドし、Container Registry に push します。

    pack build --publish IMAGE_URL

    IMAGE_URL は、コンテナ イメージへの参照(gcr.io/cloudrun/hello など)に置き換えます。

  6. pack が完了するまで待ちます。

詳しくは、アプリケーションのビルドの手順をご覧ください。

次のステップ

  • コンテナを Cloud Run for Anthos にデプロイする際に適用される契約の詳細を確認する。コンテナ契約をご覧ください。

  • ビルドしたコンテナを Cloud Run for Anthos にデプロイする。サービスのデプロイをご覧ください。

  • Cloud Build トリガーを使用して Cloud Run for Anthos サービスのビルドとデプロイを自動化する。継続的デプロイの設定をご覧ください。