首页/云/云与容器速查/基础镜像选型(alpine / slim / distroless)
本包目录(340 条)
云基础概念44 条计算与存储56 条网络与安全组33 条
容器与 Docker106 条
Kubernetes68 条容器排障33 条

基础镜像选型(alpine / slim / distroless)

基础镜像决定体积、libc 兼容与可调试性:musl 的 alpine 与 glibc 的 debian-slim 不是等价替换。先满足二进制/运行时的 libc 要求,再谈体积优化。

云与容器速查云更新于 2026-10-12

常见基础镜像对照

镜像体积量级libc特点
alpine:3.20≈8MBmusl小、快;glibc 二进制约跑不动,调试工具缺
debian:12-slim≈75MBglibc兼容性最好,apt 可用,生产稳妥
ubuntu:24.04≈80MBglibc生态熟悉,细节冗余略多
distroless≈2-20MBglibc无 shell/包管理器:攻击面小、排障难
scratch0无仅放静态编译二进制,无任何工具

两种写法对照

两种写法对照
FROM alpine:3.20
RUN apk add --no-cache ca-certificates

# 或
FROM debian:12-slim
RUN apt-get update && apt-get install -y --no-install-recommends ca-certificates && rm -rf /var/lib/apt/lists/*
CA 证书、时区数据、DNS 解析行为都是选型考虑项:alpine 的 DNS 处理与 glibc 有差异,企业内网偶发解析问题。

易错点

  • 为省体积硬换 alpine:glibc 应用直接报 not found(其实是缺动态链接器)
  • distroless 出问题想 docker exec -it sh:镜像里根本没有 shell

数据来源与参考

  • Docker Docs:Base images
  • Alpine Linux 官方镜像说明

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌