Dockerfile.receiver (CGO-free, /data volume), receiver image in CI and tag releases, receiver binary in release archives, make build-receiver, example k8s manifests (deployment/service/ingress/secret/pvc) under deploy/k8s/receiver/, and README coverage including sender/receiver token pairing. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
27 lines
549 B
Docker
27 lines
549 B
Docker
# Build stage
|
|
FROM golang:1.25-alpine AS builder
|
|
|
|
WORKDIR /src
|
|
|
|
COPY go.mod go.sum ./
|
|
RUN go mod download
|
|
|
|
COPY . .
|
|
|
|
ARG VERSION=dev
|
|
RUN CGO_ENABLED=0 GOOS=linux go build -trimpath -ldflags="-s -w -X main.version=${VERSION}" -o /out/exploredns-receiver ./cmd/exploredns-receiver
|
|
|
|
# Final stage
|
|
FROM alpine:3.21
|
|
|
|
RUN apk --no-cache add ca-certificates
|
|
|
|
COPY --from=builder /out/exploredns-receiver /usr/local/bin/exploredns-receiver
|
|
|
|
ENV RECEIVER_SQLITE_PATH=/data/exploredns-receiver.db
|
|
VOLUME /data
|
|
|
|
EXPOSE 8080
|
|
|
|
ENTRYPOINT ["exploredns-receiver"]
|