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-10-08 06:19:29 +00:00
|
|
|
FROM golang:1.23.2-alpine@sha256:9dd2625a1ff2859b8d8b01d8f7822c0f528942fe56cfe7a1e7c38d3b8d72d679 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-10-01 20:08:41 +00:00
|
|
|
FROM gcr.io/distroless/static@sha256:69830f29ed7545c762777507426a412f97dad3d8d32bae3e74ad3fb6160917ea 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"]
|