Rust多阶段构建实战:把2GB镜像瘦身到30MB
把Rust服务部署到生产环境,镜像体积与安全性是关键。标准做法是用多阶段构建:第一阶段使用rust:1.75等完整镜像编译release版本,第二阶段仅复制二进制到debian:bookworm-slim或scratch基础镜像。若要进一步压缩,可为目标添加x86_64-unknown-linux-musl,用cargo build --release --target 生成完全静态二进制,再COPY到scratch,最终镜像可低至约30MB。这类最小化镜像几乎不含shell与包管理器,攻击面更小,也更适合Kubernetes大规模分发。同时应在CI中利用cargo-chef做依赖缓存,把动辄15到20分钟的优化编译控制在可接受范围。 |