FROM golang:1.16.6-alpine AS builder WORKDIR /build ENV LD_FLAGS="-w" ENV CGO_ENABLED=0 COPY go.mod go.sum /build/ RUN go mod download RUN go mod verify COPY . /build/ RUN echo "-- TEST" \ && go test ./... \ && echo "-- BUILD" \ && go install -tags netgo -ldflags "${LD_FLAGS}" . FROM busybox LABEL maintainer="Robert Jacob " COPY --from=builder /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/ca-certificates.crt COPY --from=builder /go/bin/ldapmin /bin/ldapmin USER nobody EXPOSE 8080 ENTRYPOINT ["/bin/ldapmin"]