From 6298f95963969b9f6cdbe8d303e5c208bad851af Mon Sep 17 00:00:00 2001 From: Simone Margaritelli Date: Thu, 16 Nov 2023 14:10:04 +0100 Subject: [PATCH] new: optimized docker image size --- Dockerfile | 21 +++++---------------- 1 file changed, 5 insertions(+), 16 deletions(-) diff --git a/Dockerfile b/Dockerfile index 83acdb8..25d8b59 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,22 +1,11 @@ -# build stage -FROM rust:bookworm as build +FROM rust:bullseye as builder RUN apt-get update && apt-get install -y libssl-dev ca-certificates cmake git -# create a new empty shell project -RUN USER=root cargo new --bin legba -WORKDIR /legba - -# copy contents -COPY ./Cargo.lock ./Cargo.lock -COPY ./Cargo.toml ./Cargo.toml -COPY ./src ./src - -# build +WORKDIR /app +ADD . /app RUN cargo build --release -FROM debian:bookworm-slim -RUN apt-get update && apt-get install -y libssl-dev ca-certificates && rm -rf /var/lib/apt/lists/* -RUN update-ca-certificates -COPY --from=build /legba/target/release/legba /usr/bin/legba +FROM gcr.io/distroless/cc-debian11 +COPY --from=builder /app/target/release/legba /usr/bin/legba ENTRYPOINT ["/usr/bin/legba"] \ No newline at end of file