このガイドの以降の手順は、Cloud Build を使用したリモートビルドに焦点を当てています。ローカルビルドについては、キャッシュ イメージの手順と pack
コマンドのリファレンス ページの両方をご覧ください。
Cloud Build でのキャッシュ イメージの使用
Cloud Build で Buildpack のキャッシュ イメージを有効にするには、ビルド構成ファイル(cloudbuild.yaml
など)を作成する必要があります。ビルド構成ファイルは、指定されたリモート リポジトリにビルドイメージを公開するように pack
CLI に指示します。このビルドイメージは、その後のビルドでキャッシュ イメージとして使用されます。
新しいビルド構成ファイルで実行する最初のビルドでは、pack
コマンドを使用して初期ビルドのイメージ キャッシュを作成し、リポジトリに push します。ビルド パフォーマンスの向上は、最初のキャッシュ イメージがビルドで使用可能になった後に確認できます。
ビルド構成ファイルの作成
Cloud Build 構成ファイルを定義するには、pack
CLI を使用してイメージを作成するビルドステップを含む YAML ファイルを作成する必要があります。
次の cloudbuild.yaml
の例では、Buildpack を使用してアプリケーションまたは関数用のイメージを作成し、初期ビルドのキャッシュ イメージを作成してリポジトリに push します。
options: logging: CLOUD_LOGGING_ONLY pool: {} projectId: PROJECT_ID steps: - name: gcr.io/k8s-skaffold/pack entrypoint: pack args: - build - LOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/IMAGE_NAME - --builder - gcr.io/buildpacks/builder:latest - --cache-image - LOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/CACHE_IMAGE_NAME:latest - --publish
次のように置き換えます。
LOCATION
は、コンテナ リポジトリのリージョン名に置き換えます。例:us-west2
PROJECT_ID
は、Google Cloud プロジェクトの ID に置き換えます。REPO_NAME
は Docker リポジトリの名前に置き換えます。IMAGE_NAME
は、アプリケーションまたは関数のコンテナ イメージの名前に置き換えます。CACHE_IMAGE_NAME
は、ビルド キャッシュ イメージの名前に置き換えます。
また、pack build
コマンド リファレンスで、ビルド構成ファイルで定義できるその他の引数もご覧ください。
キャッシュ イメージを使用したリモートビルド
ビルドを実行するには、--config
コマンドフラグを含めて構成ファイルを指定します。たとえば、cloudbuild.yaml
という名前のファイルを使用するには、次のコマンドを実行します。
gcloud builds submit --config cloudbuild.yaml --pack image=example-docker.pkg.dev/my-project-id/repo/example-image
リモートビルドの詳細については、アプリケーションをビルドするまたは関数を作成するをご覧ください。