2022-07-12 08:55:22 +00:00
|
|
|
# This version of Dockerfile is for building without external dependencies.
|
2023-01-17 20:16:00 +00:00
|
|
|
# Build a multi-platform image e.g. `docker buildx build --push --platform linux/arm64,linux/amd64 --tag external-secrets:dev --file Dockerfile.standalone .`
|
2024-08-26 09:10:58 +00:00
|
|
|
FROM golang:1.23.0-alpine@sha256:d0b31558e6b3e4cc59f6011d79905835108c919143ebecc58f35965bf79948f4 AS builder
|
2023-01-17 20:16:00 +00:00
|
|
|
ARG TARGETOS
|
|
|
|
ARG TARGETARCH
|
|
|
|
ENV CGO_ENABLED=0 GOOS=${TARGETOS} GOARCH=${TARGETARCH}
|
2022-07-12 08:55:22 +00:00
|
|
|
WORKDIR /app
|
|
|
|
# Avoid invalidating the `go mod download` cache when only code has changed.
|
|
|
|
COPY go.mod go.sum /app/
|
|
|
|
RUN go mod download
|
|
|
|
COPY . /app/
|
|
|
|
RUN go build -o external-secrets main.go
|
|
|
|
|
|
|
|
|
2024-07-08 08:57:46 +00:00
|
|
|
FROM gcr.io/distroless/static@sha256:ce46866b3a5170db3b49364900fb3168dc0833dfb46c26da5c77f22abb01d8c3 AS app
|
2022-07-12 08:55:22 +00:00
|
|
|
COPY --from=builder /app/external-secrets /bin/external-secrets
|
|
|
|
|
|
|
|
# Run as UID for nobody
|
|
|
|
USER 65534
|
|
|
|
|
|
|
|
ENTRYPOINT ["/bin/external-secrets"]
|