20 lines
672 B
Docker
20 lines
672 B
Docker
FROM golang:1.17.4-alpine3.15 as builder
|
|
ARG ARCH
|
|
ARG LDFLAGS
|
|
RUN adduser -D -g 65532 -u 65532 appuser \
|
|
&& mkdir /build \
|
|
&& apk add --no-cache ca-certificates
|
|
WORKDIR /build
|
|
COPY go.mod go.mod
|
|
COPY go.sum go.sum
|
|
RUN go mod download
|
|
COPY cmd/pve-csr-approver-manager/main.go main.go
|
|
COPY pkg/approver/ pkg/approver
|
|
RUN CGO_ENABLED=0 GOOS=linux GOARCH=$ARCH GO111MODULE=on go build -trimpath -gcflags 'all=-e' -ldflags "$LDFLAGS" -o /pve-csr-approver main.go
|
|
FROM scratch
|
|
COPY --from=builder /etc/passwd /etc/group /etc/
|
|
COPY --from=builder /etc/ssl/cert.pem /etc/ssl/
|
|
COPY --from=builder /pve-csr-approver /
|
|
# appuser
|
|
USER 65532
|
|
ENTRYPOINT ["/pve-csr-approver"]
|