kubernetes-sigs_nfs-subdir-.../Dockerfile.multiarch

22 lines
639 B
Docker

FROM --platform=$BUILDPLATFORM golang:1.19 as build-env
# xx wraps go to automatically configure $GOOS, $GOARCH, and $GOARM
# based on TARGETPLATFORM provided by Docker.
COPY --from=tonistiigi/xx:golang-1.0.0 / /
ARG APP_FOLDER
ADD . ${APP_FOLDER}
WORKDIR ${APP_FOLDER}
# Compile independent executable using go wrapper from xx:golang
ARG TARGETPLATFORM
RUN CGO_ENABLED=0 go build -a -ldflags '-extldflags "-static"' -o /bin/main ./cmd/nfs-subdir-external-provisioner
FROM --platform=$TARGETPLATFORM alpine:3.18
RUN apk update --no-cache && apk add ca-certificates
COPY --from=build-env /bin/main /app/main
ENTRYPOINT ["/app/main"]