#################################################################################################### ## Builder #################################################################################################### FROM rust:latest AS builder WORKDIR /app COPY Cargo.toml . COPY Cargo.lock . COPY benches benches COPY assets assets COPY src src RUN --mount=type=cache,target=/app/target \ --mount=type=cache,target=/root/.cargo/registry \ cargo build --release --bin rod && \ mv /app/target/release/rod . #################################################################################################### ## Final image #################################################################################################### FROM gcr.io/distroless/cc COPY assets /assets COPY --from=builder /app/rod / EXPOSE 4944 4945 ENTRYPOINT ["./rod"]