[WIP] music platform user data scraper
teal-fm atproto
1FROM --platform=${BUILDPLATFORM:-linux/amd64} golang:1.24.3-alpine3.21 as builder 2 3ARG TARGETPLATFORM 4ARG BUILDPLATFORM 5ARG TARGETOS 6ARG TARGETARCH 7 8#needed for sqlite 9RUN apk add --update gcc musl-dev 10 11# step 1. dep cache 12WORKDIR /app 13ARG TARGETPLATFORM=${BUILDPLATFORM:-linux/amd64} 14COPY go.mod go.sum ./ 15RUN go mod download 16 17# step 2. build the actual app 18WORKDIR /app 19COPY . . 20#generate the jwks 21RUN go run github.com/haileyok/atproto-oauth-golang/cmd/helper generate-jwks 22RUN GOOS=${TARGETOS} GOARCH=${TARGETARCH} go build -ldflags='-w -s -extldflags "-static"' -o main ./cmd 23ARG TARGETOS=${TARGETPLATFORM%%/*} 24ARG TARGETARCH=${TARGETPLATFORM##*/} 25 26FROM --platform=${TARGETPLATFORM:-linux/amd64} alpine:3.21 27#Creates an empty /db folder for docker compose 28WORKDIR /db 29WORKDIR /app 30COPY --from=builder /app/main /app/main 31COPY --from=builder /app/jwks.json /app/jwks.json 32ENTRYPOINT ["/app/main"]