# ------------------------------------------------------------------------------
# First Stage: Build Stage
# ------------------------------------------------------------------------------
FROM fedora:latest AS builder
RUN dnf in -y rustc cargo pkg-config openssl-devel && dnf clean all
WORKDIR /app
COPY Cargo.toml Cargo.lock ./
COPY src/ ./src/
RUN cargo build --release
# ------------------------------------------------------------------------------
# Second Stage: Production Stage
# ------------------------------------------------------------------------------
FROM fedora:latest AS final
RUN groupadd --system botcat-capoo && useradd --system --gid botcat-capoo botcat-capoo
USER botcat-capoo
WORKDIR /app
COPY --from=builder /app/target/release/botcat-capoo .
EXPOSE 8080
CMD ["./botcat-capoo"]