Multistage + distroless go brrrrr
Human Talks :: 2023-05-09
root
privilegesBuild
to create an imageRun
to play wit itPush
to share with the worldFROM rust:latest
COPY . /demo
WORKDIR /demo
RUN cargo build --release
ENTRYPOINT ["/demo/target/release/demo"]
1.4GB
FROM rust:latest as build
COPY . /demo
WORKDIR /demo
RUN cargo build --release
FROM debian:bookworm-slim
COPY --from=build /demo/target/release/demo /usr/local/bin/demo
ENTRYPOINT ["/usr/local/bin/demo"]
75MB
FROM rust:latest as build
COPY . /demo
WORKDIR /demo
RUN cargo build --release
FROM gcr.io/distroless/cc
COPY --from=build /demo/target/release/demo ./demo
ENTRYPOINT ["./demo"]
23.1MB
FROM rust:latest as build
COPY . /demo
WORKDIR /demo
RUN rustup target add x86_64-unknown-linux-musl
RUN cargo install --target x86_64-unknown-linux-musl --path .
FROM scratch
COPY --from=build /usr/local/cargo/bin/demo ./demo
ENTRYPOINT ["./demo"]
412kB