---
title: Docker Compose镜像digest固定与来源治理(服务-白名单)最佳实践
keywords:
- Compose
- 镜像digest
- 来源白名单
- 服务
- 校验
description: 在 Docker Compose 中对服务镜像实施 digest 固定与来源白名单校验,保障部署镜像的可追溯与完整性。
categories:
- 文章资讯
- 技术教程
---
实现示例
type Service = { name: string; image: string; digest?: string }
const allowRegistries = new Set<string>(['docker.io','ghcr.io','registry.example.com'])
function hasDigest(s: Service): boolean { return !!s.digest && /^[A-Fa-f0-9]{64}$/.test(s.digest) }
function validImage(s: Service): boolean { const m = /^(\w[\w.-]+)\/(\w[\w.-]+):([\w.-]+)$/.exec(s.image); return !!m }
function registryAllowed(s: Service): boolean { try { const parts = s.image.split('/'); const host = parts[0]; return allowRegistries.has(host) } catch { return false } }
function evaluate(list: Service[]): { ok: boolean; errors: string[] } {
const errors: string[] = []
for (const s of list) {
if (!s.name || !validImage(s) || !registryAllowed(s)) errors.push(`image:${s.name}`)
if (!hasDigest(s)) errors.push(`digest:${s.name}`)
}
return { ok: errors.length === 0, errors }
}
审计与运行治理
- 审计服务镜像域与
digest固定;异常阻断并输出修复建议。 - 部署变更需审批与归档。

发表评论 取消回复