Dockerfile.buildx
2a6325e3
 ARG GO_VERSION=1.13.15
7eb804c9
 ARG BUILDX_COMMIT=v0.3.1
833444c0
 ARG BUILDX_REPO=https://github.com/docker/buildx.git
37fe68f5
 
671459a9
 FROM golang:${GO_VERSION}-buster AS build
37fe68f5
 ARG BUILDX_REPO
833444c0
 RUN git clone "${BUILDX_REPO}" /buildx
 WORKDIR /buildx
37fe68f5
 ARG BUILDX_COMMIT
833444c0
 RUN git fetch origin "${BUILDX_COMMIT}":build && git checkout build
 ARG GOOS
 ARG GOARCH
 # Keep these essentially no-op var settings for debug purposes.
 # It allows us to see what the GOOS/GOARCH that's being built for is.
ce28a91c
 RUN GOOS="${GOOS}" GOARCH="${GOARCH}" BUILDX_COMMIT="${BUILDX_COMMIT}"; \
     pkg="github.com/docker/buildx"; \
     ldflags="\
       -X \"${pkg}/version.Version=$(git describe --tags)\" \
       -X \"${pkg}/version.Revision=$(git rev-parse --short HEAD)\" \
       -X \"${pkg}/version.Package=buildx\" \
     "; \
6168b875
     go build -mod=vendor -ldflags "${ldflags}" -o /usr/bin/buildx ./cmd/buildx
b6ae3c20
 
671459a9
 FROM golang:${GO_VERSION}-buster
b6ae3c20
 COPY --from=build /usr/bin/buildx /usr/bin/buildx
ce28a91c
 ENTRYPOINT ["/usr/bin/buildx"]