コンテナをビルドする

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

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

  • Dockerfile の使用
  • Buildpacks の使用

Dockerfile を使用してビルドする

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

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

Cloud Build でビルドする

Cloud Build を使用して Google Cloud にイメージをビルドできます。

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

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

    gcloud builds submit --tag IMAGE_URL

    IMAGE_URL は、コンテナ イメージへの参照(gcr.io/myproject/my-image:latest など)に置き換えます。

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

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

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

Docker を使用してソースからコンテナ イメージをビルド(コンテナ化)する前に、ソースと Dockerfile を用意する必要があります。一般的な言語のサンプル アプリケーションと Dockerfiles については、ビルドとデプロイのクイックスタートをご覧ください。

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

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

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

    docker build . --tag IMAGE_URL

    IMAGE_URL は、コンテナ イメージへの参照(gcr.io/myproject/my-image:latest など)に置き換えます。

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

    gcloud auth configure-docker

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

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

    docker push IMAGE_URL

    IMAGE_URL は、コンテナ イメージへの参照(gcr.io/myproject/my-image:latest など)に置き換えます。

このプロセスからローカル ファイルを除外するには、.dockerignore 構成ファイルの手順に従ってください。

Buildpacks を使用してビルドする

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

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

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

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

Buildpack でビルドするには:

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

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

    gcloud alpha builds submit --pack image=IMAGE_URL

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

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

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

pack コマンドを使用してビルドするには、次のようにします。

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

  2. gcloud コマンドライン ツールを使用して 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/myproject/my-image:latest など)に置き換えます。

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

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

次のステップ