コンテンツにスキップ

Docker のビルド結果をキャッシュする

buildx を使ってビルドするとキャッシュの設定が細かくできる。 https://docs.docker.com/build/building/cache/backends/

  • inline: embeds the build cache into the image.

The inline cache gets pushed to the same location as the main output result. Note that this only works for the image exporter.

  • registry: embeds the build cache into a separate image, and pushes to a dedicated location separate from the main output.
  • local: writes the build cache to a local directory on the filesystem.
  • gha: uploads the build cache to GitHub Actions cache (beta).
  • s3: uploads the build cache to an AWS S3 bucket (unreleased).
  • azblob: uploads the build cache to Azure Blob Storage (unreleased).

GitHub Actions で使う例はこちらdocker/build-push-action@v3でビルドしたイメージを後続の処理で使うにはoutputs: type=dockerを設定する。 この設定をすると build と push が少し遅くなるので、後続の処理でビルドしたイメージを使わないならこのオプションは使わない方がいい。