| 123456789101112131415161718192021 |
- # This version of Dockerfile is for building without external dependencies.
- # Build a multi-platform image e.g. `docker buildx build --push --platform linux/arm64,linux/amd64 --tag external-secrets:dev --file Dockerfile.standalone .`
- FROM golang:1.23.3-alpine@sha256:c694a4d291a13a9f9d94933395673494fc2cc9d4777b85df3a7e70b3492d3574 AS builder
- ARG TARGETOS
- ARG TARGETARCH
- ENV CGO_ENABLED=0 GOOS=${TARGETOS} GOARCH=${TARGETARCH}
- 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
- FROM gcr.io/distroless/static@sha256:f4a57e8ffd7ba407bdd0eb315bb54ef1f21a2100a7f032e9102e4da34fe7c196 AS app
- COPY --from=builder /app/external-secrets /bin/external-secrets
- # Run as UID for nobody
- USER 65534
- ENTRYPOINT ["/bin/external-secrets"]
|