# syntax=docker/dockerfile:1.4 FROM rust:1.89-slim AS builder RUN apt-get update && apt-get install -y \ pkg-config \ libssl-dev \ && rm -rf /var/lib/apt/lists/* WORKDIR /app COPY Cargo.toml build.rs ./ ARG FEATURES=embed ARG TEMPLATES=./templates ARG STATIC=./static ARG GIT_HASH=0 ENV GIT_HASH=$GIT_HASH COPY src ./src COPY migrations ./migrations COPY static ./static COPY ${TEMPLATES} ./templates COPY ${STATIC} ./static RUN cargo build --release --bin acudo --no-default-features --features ${FEATURES} FROM gcr.io/distroless/cc-debian12 LABEL org.opencontainers.image.title="Acudo" LABEL org.opencontainers.image.description="A ticket platform for Lexicon Community events and RSVPs." LABEL org.opencontainers.image.licenses="MIT" LABEL org.opencontainers.image.authors="Nick Gerakines " LABEL org.opencontainers.image.source="https://tangled.sh/@smokesignal.events/acudo" LABEL org.opencontainers.image.version="1.0.0" WORKDIR /app COPY --from=builder /app/target/release/acudo /app/acudo COPY --from=builder /app/static ./static ENV HTTP_STATIC_PATH=/app/static ENV HTTP_PORT=8080 ENV RUST_LOG=info ENV RUST_BACKTRACE=full ENTRYPOINT ["/app/acudo"]