github.com/thetreep/go-swagger@v0.0.0-20240223100711-35af64f14f01/Dockerfile (about) 1 FROM --platform=$BUILDPLATFORM golang:alpine as cross 2 3 ARG TARGETOS TARGETARCH 4 5 ARG commit_hash="dev" 6 ARG tag_name="dev" 7 8 ADD . /work 9 WORKDIR /work 10 11 RUN apk --no-cache add ca-certificates shared-mime-info mailcap git build-base binutils-gold 12 13 RUN mkdir -p bin &&\ 14 LDFLAGS="$LDFLAGS -X github.com/thetreep/go-swagger/cmd/swagger/commands.Commit=${commit_hash}" &&\ 15 LDFLAGS="$LDFLAGS -X github.com/thetreep/go-swagger/cmd/swagger/commands.Version=${tag_name}" &&\ 16 CGO_ENABLED=0 GOOS=$TARGETOS GOARCH=$TARGETARCH go build -tags osusergo,netgo -o bin/swagger -ldflags "$LDFLAGS" -a ./cmd/swagger 17 18 FROM --platform=$TARGETPLATFORM golang:alpine 19 20 LABEL maintainer="Ivan Porto Carrero <ivan@flanders.co.nz> (@casualjim)" 21 22 RUN apk --no-cache add ca-certificates shared-mime-info mailcap git build-base 23 24 COPY --from=cross /work/bin/swagger /usr/bin/swagger 25 COPY --from=cross /work/generator/templates/contrib /templates/ 26 27 ENTRYPOINT ["/usr/bin/swagger"] 28 CMD ["--help"]