FROM golang:1.24-alpine AS builder ARG VERSION=dev ARG COMMIT=unknown ARG DATE=unknown ENV CGO_ENABLED=0 \ LDFLAGS="-s -w -X git.ipng.ch/ipng/nginx-logtail/internal/version.Version=${VERSION} -X git.ipng.ch/ipng/nginx-logtail/internal/version.Commit=${COMMIT} -X git.ipng.ch/ipng/nginx-logtail/internal/version.Date=${DATE}" WORKDIR /src COPY go.mod go.sum ./ RUN go mod download COPY . . RUN go build -trimpath -ldflags="${LDFLAGS}" -o /out/collector ./cmd/collector && \ go build -trimpath -ldflags="${LDFLAGS}" -o /out/aggregator ./cmd/aggregator && \ go build -trimpath -ldflags="${LDFLAGS}" -o /out/frontend ./cmd/frontend && \ go build -trimpath -ldflags="${LDFLAGS}" -o /out/cli ./cmd/cli FROM scratch COPY --from=builder /out/ /usr/local/bin/