diff --git a/internal/pipe/docker/api_docker.go b/internal/pipe/docker/api_docker.go index 8c67f6278..02c546a25 100644 --- a/internal/pipe/docker/api_docker.go +++ b/internal/pipe/docker/api_docker.go @@ -61,7 +61,7 @@ func (i dockerImager) Build(ctx *context.Context, root string, images, flags []s func (i dockerImager) buildCommand(images, flags []string) []string { base := []string{"build", "."} if i.buildx { - base = []string{"buildx", "build", ".", "--load"} + base = []string{"buildx", "--builder", "default", "build", ".", "--load"} } for _, image := range images { base = append(base, "-t", image) diff --git a/internal/pipe/docker/docker_test.go b/internal/pipe/docker/docker_test.go index 584bb6228..0eeee1de2 100644 --- a/internal/pipe/docker/docker_test.go +++ b/internal/pipe/docker/docker_test.go @@ -1122,7 +1122,7 @@ func TestBuildCommand(t *testing.T) { name: "buildx", buildx: true, flags: []string{"--label=foo", "--build-arg=bar=baz"}, - expect: []string{"buildx", "build", ".", "--load", "-t", images[0], "-t", images[1], "--label=foo", "--build-arg=bar=baz"}, + expect: []string{"buildx", "--builder", "default", "build", ".", "--load", "-t", images[0], "-t", images[1], "--label=foo", "--build-arg=bar=baz"}, }, } for _, tt := range tests { diff --git a/www/docs/customization/docker.md b/www/docs/customization/docker.md index 2d6b074ed..d0e1f8439 100644 --- a/www/docs/customization/docker.md +++ b/www/docs/customization/docker.md @@ -240,6 +240,27 @@ docker build -t myuser/myimage . \ !!! tip Learn more about the [name template engine](/customization/templates/). +## Use a specific builder with Docker buildx + +If `buildx` is enabled, the `default` context builder will be used when building +the image. This builder is always available and backed by BuildKit in the +Docker engine. If you want to use a different builder, you can specify it using +the `build_flag_templates` field: + +```yaml +# .goreleaser.yaml +dockers: + - + image_templates: + - "myuser/myimage" + use: buildx + build_flag_templates: + - "--builder=mybuilder" +``` + +!!! tip + Learn more about the [buildx builder instances](https://docs.docker.com/buildx/working-with-buildx/#work-with-builder-instances). + ## Podman !!! success "GoReleaser Pro"