github.com/afbjorklund/moby@v20.10.5+incompatible/Dockerfile.buildx (about) 1 ARG GO_VERSION=1.13.15 2 ARG BUILDX_COMMIT=v0.5.1 3 ARG BUILDX_REPO=https://github.com/docker/buildx.git 4 5 FROM golang:${GO_VERSION}-buster AS build 6 ARG BUILDX_REPO 7 RUN git clone "${BUILDX_REPO}" /buildx 8 WORKDIR /buildx 9 ARG BUILDX_COMMIT 10 RUN git fetch origin "${BUILDX_COMMIT}":build && git checkout build 11 ARG GOOS 12 ARG GOARCH 13 # Keep these essentially no-op var settings for debug purposes. 14 # It allows us to see what the GOOS/GOARCH that's being built for is. 15 RUN GOOS="${GOOS}" GOARCH="${GOARCH}" BUILDX_COMMIT="${BUILDX_COMMIT}"; \ 16 pkg="github.com/docker/buildx"; \ 17 ldflags="\ 18 -X \"${pkg}/version.Version=$(git describe --tags)\" \ 19 -X \"${pkg}/version.Revision=$(git rev-parse --short HEAD)\" \ 20 -X \"${pkg}/version.Package=buildx\" \ 21 "; \ 22 go build -mod=vendor -ldflags "${ldflags}" -o /usr/bin/buildx ./cmd/buildx 23 24 FROM golang:${GO_VERSION}-buster 25 COPY --from=build /usr/bin/buildx /usr/bin/buildx 26 ENTRYPOINT ["/usr/bin/buildx"]