-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathDockerfile
More file actions
31 lines (21 loc) · 932 Bytes
/
Copy pathDockerfile
File metadata and controls
31 lines (21 loc) · 932 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
FROM --platform=${BUILDPLATFORM} golang:1.26.4-alpine@sha256:3ad57304ad93bbec8548a0437ad9e06a455660655d9af011d58b993f6f615648 AS builder
ARG TARGETARCH
ENV CGO_ENABLED=0 \
GOARCH=${TARGETARCH} \
GOFLAGS="-ldflags=-s" \
GOCACHE="/cache/build" \
GOMODCACHE="/cache/mod"
WORKDIR /app
COPY go.mod go.sum ./
RUN --mount=type=cache,target=${GOMODCACHE} \
go mod download
COPY --parents cmd internal ./
RUN --mount=type=cache,target=${GOCACHE} \
--mount=type=cache,target=${GOMODCACHE} \
go build -o /bin/volkeep ./cmd/volkeep
FROM gcr.io/distroless/static@sha256:3592aa8171c77482f62bbc4164e6a2d141c6122554ace66e5cc910cadb961ff0 AS runtime
COPY --from=ghcr.io/tarampampam/microcheck:1.4.0@sha256:c9f79cd408626de7c10f2d487d67339f49adf0ba61dde96ede65343269db1f85 /bin/pidcheck /bin/pidcheck
COPY --from=builder /bin/volkeep /bin/volkeep
USER nonroot:nonroot
HEALTHCHECK NONE
ENTRYPOINT ["/bin/volkeep"]