# ---------- Build stage ----------
FROM rust:1.88 AS builder
WORKDIR /app
# Copy manifests first for better layer caching
COPY Cargo.toml Cargo.lock ./
# Copy source
COPY . .
# Build release binary
RUN cargo build --release --bin pipey
# ---------- Runtime stage ----------
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/pipey /usr/local/bin/pipey
EXPOSE 8080
CMD ["pipey"]