configuration for self hosting a spindle in docker
1# ── Build stage ───────────────────────────────────────────────────────────────
2FROM golang:1.23-alpine AS builder
3
4RUN apk add --no-cache git
5
6WORKDIR /src
7
8# Clone the core repo from tangled.org
9RUN git clone https://tangled.org/tangled.org/core .
10
11RUN go mod download
12RUN go build -o /spindle ./cmd/spindle/main.go
13
14# ── Runtime stage ─────────────────────────────────────────────────────────────
15FROM alpine:3.20
16
17RUN apk add --no-cache ca-certificates docker-cli
18
19COPY --from=builder /spindle /usr/local/bin/spindle
20
21RUN mkdir -p /data /var/log/spindle
22
23EXPOSE 6555
24
25ENTRYPOINT ["/usr/local/bin/spindle"]