Dockerfile 647 B

1234567891011121314151617181920212223
  1. FROM rust:1.56.1 as builder
  2. WORKDIR /app
  3. COPY . .
  4. WORKDIR /app/backend
  5. ENV SQLX_OFFLINE true
  6. RUN RUSTFLAGS="-C opt-level=2" cargo build --release --bin backend
  7. # Size optimization
  8. #RUN strip ./target/release/backend
  9. FROM debian:bullseye-slim AS runtime
  10. WORKDIR /app
  11. RUN apt-get update -y \
  12. && apt-get install -y --no-install-recommends openssl \
  13. # Clean up
  14. && apt-get autoremove -y \
  15. && apt-get clean -y \
  16. && rm -rf /var/lib/apt/lists/*
  17. COPY --from=builder /app/backend/target/release/backend /usr/local/bin/backend
  18. COPY --from=builder /app/backend/configuration configuration
  19. ENV APP_ENVIRONMENT production
  20. CMD ["backend"]