add Dockerfile

This commit is contained in:
Denis-Cosmin NUTIU 2024-12-30 19:03:52 +02:00
parent 1d4a776b8f
commit a0235d20d8

31
bot/docker/Dockerfile Normal file
View file

@ -0,0 +1,31 @@
FROM rust:1.83.0-bookworm AS planner
RUN cargo install cargo-chef
WORKDIR /app
# Copy the whole project
COPY . .
# Prepare a build plan ("recipe")
RUN cargo chef prepare --recipe-path recipe.json
FROM rust:1.83.0-bookworm AS builder
RUN cargo install cargo-chef
WORKDIR /app
# Copy the build plan from the previous Docker stage
COPY --from=planner /app/recipe.json recipe.json
# Build dependencies - this layer is cached as long as `recipe.json`
# doesn't change.
RUN cargo chef cook --recipe-path recipe.json
# Build the whole project
COPY . .
RUN cargo build --profile release
# Run the project
FROM rust:1.83.0-bookworm AS runner
WORKDIR /app
COPY --from=builder /app/target/release/bot /app/bot
ENTRYPOINT ["/app/bot"]