FROM --platform=$BUILDPLATFORM golang:1.22 AS builder WORKDIR /app COPY go.mod ./ COPY go.sum ./ RUN --mount=type=cache,mode=0777,target=/go/pkg/mod go mod download all COPY ./daemons ./daemons COPY ./pkg ./pkg COPY ./src ./src COPY ./cmd ./cmd ARG TARGETOS TARGETARCH RUN --mount=type=cache,mode=0777,target=/go/pkg/mod \ CGO_ENABLED=0 GOOS=$TARGETOS GOARCH=$TARGETARCH \ go build -tags timetzdata \ -o /tstor ./cmd/tstor/main.go FROM scratch COPY --from=builder /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/ca-certificates.crt COPY --from=builder /tstor /tstor ENTRYPOINT ["/tstor"]