FROM rust:1-slim-bookworm AS builder WORKDIR /app # Cache dependencies before copying source COPY Cargo.toml Cargo.lock ./ RUN mkdir src && echo "fn main() {}" > src/main.rs \ && cargo build --release \ && rm -rf src COPY src ./src # Touch main.rs so cargo knows the real source changed RUN touch src/main.rs && cargo build --release FROM debian:bookworm-slim RUN apt-get update && apt-get install -y ca-certificates && rm -rf /var/lib/apt/lists/* COPY --from=builder /app/target/release/rustification-server /usr/local/bin/server EXPOSE 3000 CMD ["server"]