Our Personal Data Server from scratch!
at feat/bsky-2fa-shim 21 lines 779 B view raw
1FROM rust:1.92-alpine AS builder 2RUN apk add --no-cache ca-certificates openssl openssl-dev openssl-libs-static pkgconfig musl-dev 3WORKDIR /app 4COPY Cargo.toml Cargo.lock ./ 5COPY crates ./crates 6COPY .sqlx ./.sqlx 7COPY migrations ./crates/tranquil-pds/migrations 8RUN --mount=type=cache,target=/usr/local/cargo/registry \ 9 --mount=type=cache,target=/app/target \ 10 SQLX_OFFLINE=true cargo build --release -p tranquil-pds && \ 11 cp target/release/tranquil-pds /tmp/tranquil-pds 12 13FROM alpine:3.23 14RUN apk add --no-cache msmtp ca-certificates && ln -sf /usr/bin/msmtp /usr/sbin/sendmail 15COPY --from=builder /tmp/tranquil-pds /usr/local/bin/tranquil-pds 16COPY migrations /app/migrations 17WORKDIR /app 18ENV SERVER_HOST=0.0.0.0 19ENV SERVER_PORT=3000 20EXPOSE 3000 21CMD ["tranquil-pds"]