quill-sql 0.1.2

A tiny yet serious SQL database in Rust with ARIES-style WAL, 2PL, and B+Tree indexes.
Documentation
FROM rust:1.82 as builder

# Install and use the nightly toolchain to support Edition 2024 dependencies
RUN rustup toolchain install nightly
RUN rustup default nightly
WORKDIR /app

# Pre-cache deps
COPY Cargo.toml Cargo.lock ./
RUN mkdir -p src/bin && echo "fn main(){}" > src/bin/dummy.rs && cargo build --release || true

# Build
COPY . .
RUN cargo build --release --bin server

FROM gcr.io/distroless/cc-debian12:nonroot
USER nonroot
WORKDIR /app
COPY --from=builder /app/target/release/server /usr/local/bin/server
COPY --from=builder /app/public /app/public
COPY --from=builder /app/docs /app/docs
ENV QUILL_HTTP_ADDR=0.0.0.0:8080
EXPOSE 8080
CMD ["/usr/local/bin/server"]