FROM rust:1-bookworm AS builder
WORKDIR /app
COPY Cargo.toml Cargo.lock ./
COPY src/ src/
COPY migrations/ migrations/
COPY .sqlx/ .sqlx/
# Sem banco no build: as queries vêm do cache do sqlx (.sqlx) e as
# migrations são embutidas no binário pelo sqlx::migrate!.
ENV SQLX_OFFLINE=true
RUN cargo build --release --locked

FROM debian:bookworm-slim
RUN apt-get update && apt-get install -y ca-certificates && rm -rf /var/lib/apt/lists/*
WORKDIR /app
COPY --from=builder /app/target/release/schdlr .
EXPOSE 3000
CMD ["./schdlr"]
