Dockerfile.khatru-badger raw
1 FROM golang:1.25-alpine AS builder
2
3 RUN apk add --no-cache git ca-certificates
4
5 WORKDIR /build
6 COPY . .
7
8 # Build the basic-badger example
9 RUN cd examples/basic-badger && \
10 go mod tidy && \
11 CGO_ENABLED=0 go build -o khatru-badger .
12
13 FROM alpine:latest
14 RUN apk --no-cache add ca-certificates wget
15 WORKDIR /app
16 COPY --from=builder /build/examples/basic-badger/khatru-badger /app/
17 RUN mkdir -p /data
18 EXPOSE 8080
19 ENV DATABASE_PATH=/data/badger
20 ENV PORT=8080
21 HEALTHCHECK --interval=30s --timeout=10s --start-period=5s --retries=3 \
22 CMD wget --quiet --tries=1 --spider http://localhost:8080 || exit 1
23 CMD ["/app/khatru-badger"]
24