欢迎访问 内存溢出 —— 独立后端与系统工程技术博客

专注于分布式系统、Linux内核、数据库存储与后端工程实践

Docker 镜像安全:多阶段构建与漏洞扫描流水线

发表于:|最后更新:|分类:云原生与微服务|阅读:1379 次

容器镜像往往包含基础镜像、依赖库与应用代码,任一环节的漏洞都会随镜像进入生产环境。

一、多阶段构建减小攻击面

dockerfile
FROM golang:1.22 AS builder
WORKDIR /src
COPY . .
RUN CGO_ENABLED=0 go build -o app .

FROM gcr.io/distroless/static-debian12
COPY --from=builder /src/app /app
USER nonroot
ENTRYPOINT ["/app"]

使用 distroless 基础镜像可移除包管理器与 Shell,显著缩小攻击面。

二、CI 流水线集成漏洞扫描

bash
trivy image --severity HIGH,CRITICAL myapp:latest

将 Trivy、Grype 等扫描工具接入 CI,发现高危漏洞时阻断镜像推送,并定期重建基础镜像以获取安全补丁。