如何 0 成本启动全员 AI 技能提升?戳> 了解详情
写点什么

Docker 内容信任退役,替代方案蓬勃发展

作者:Matt Saunders

  • 2025-08-26
    北京
  • 本文字数:1328 字

    阅读完需:约 4 分钟

大小:673.36K时长:03:49
Docker内容信任退役,替代方案蓬勃发展

随着 Docker 内容信任(Docker Content Trust,DCT)的使用量下降,以及其他类似的产品取代了它的功能和易用性,Docker 宣布 Docker 内容信任(DCT)即将退役。Docker 建议使用 DCT 的组织转向使用SigstoreNotation等替代方案。

 

DCT 通过允许镜像发布者使用私钥对容器镜像进行数字签名,然后通过 Docker Notary 服务器存储在注册表中的公钥进行验证。DCT 在拉取镜像时检查这些数字签名,创建一个信任链,帮助防止篡改,并确保镜像来自可信来源。这个过程防止了未签名容器镜像的部署。DCT 于 2015 年作为使用更新框架(TUF)的验证系统推出,并作为孵化项目“Notary”捐赠给了云原生计算基金会。

 

根据 Docker 的公告,使用量已显著下降。Docker 的 Brian Pratt 表示:“如今,使用 DCT 的 Docker Hub 镜像拉取不到 0.05%,微软最近宣布在 Azure 容器注册表中弃用 DCT 支持。”

 

Pratt 解释了退役 DCT 的原因:

 

上游 Notary 代码库不再积极维护,生态系统已经转向了更新的镜像签名和验证工具。

——Brian Pratt

 

退役始于 2025 年 8 月 8 日,当时 Docker 官方镜像的最老的 DCT 签名证书开始过期。启用了 DOCKER_CONTENT_TRUST 环境变量的用户将会遇到拉取失败,现在必须关闭此设置。docker trust inspect 命令也停止了对 Docker 官方镜像的工作。

 

对于寻求替代 DCT 或实现其功能的组织,有许多选择,Snyk的一篇文章记录了几种可能的替代方案。Sigstore Cosign通过 OIDC 身份和透明度日志提供无钥匙签名,因此,它没有管理临时密钥的复杂性。Cosign 提供了一个去中心化和联合的信任委托模型,拥有强大的社区支持,适合优先考虑跨多个注册表安全透明软件更新的组织。

 


Notary项目为保护软件供应链提供了规范和工具。Notary V2(Notation)提供了一种规范驱动的方法来签名和验证容器镜像,支持多个签名并集成到现有的 PKI 中。DCT 只支持每个镜像一个签名,这意味着如果供应商已经签名了镜像,组织无法添加额外的审批签名。与 DCT 不同,Notary v2 通过多个签名启用验证,允许组织添加审批链。然而,该项目需要更复杂的设置,涉及 TLS 证书和 TUF 密钥管理。

 

微软的Azure容器注册表团队提供了一个具体的过渡时间表。从 2025 年 9 月 30 日起,客户将无法在新注册表上启用 Docker 内容信任,所有 DCT 数据将在 2028 年 3 月 31 日被永久删除,届时该功能将被完全移除。在这个 Github 拉取请求中,Azure 推广迁移到 Notary 项目生态系统,特别是 Notation 工具。这将带来诸如 OCI 标准合规性、Azure Key Vault 密钥管理集成和 CI/CD 管道集成等优势。

 

设置 DCT 需要完整的基础设施,包括 Notary 服务器、Notary 签名者、Notary 客户端和带有相互 TLS 配置的 MySQL 数据库。此外,在注册表之间移动镜像时,如果没有附带 Notary 服务器,签名数据会丢失,这限制了 DCT 的互操作性。Nigel Douglas 在All Things Open上写道,现代替代方案通过改进的互操作性、更好的密钥管理和更好的集成到开发工作流程中,部分解决了这些限制。Sigstore 将所有签名存储在公共注册表中,以提高透明度和可审计性,并支持大多数生产注册表。Notary v2 为签名 OCI 镜像提供了全面的跨注册表规范,尽管注册表支持仍然有限。

 

Docker 计划使用现代工具为 Docker 官方镜像实现一个现代镜像签名解决方案,尽管细节尚未公布。

 

原文链接:

https://www.infoq.com/news/2025/08/docker-content-trust-retired/

2025-08-26 13:003933

评论

发布
暂无评论

分解的三要素,从经典中感悟

顿晓

5月日更 分解

惊呆了!阿里自爆2021年度九大Java技术合集,Github上已获赞98.3K

Java架构师迁哥

内卷

Jxin

如何做好用户画像?

石云升

创业 用户模型 5月日更

Nginx 常用配置清单

Java小咖秀

nginx Web 反向代理 HTTP

架构实战营 - 模块三作业

Sun

PHP文件包含小总结

Thrash

安全

架构实战营 -- 模块三

永佳

架构实战营

基于OpenPAI细化部署 Hadoop 集群

Damon

hadoop 5月日更

架构实战营模块三作业

竹林七贤

想提升查询性能?openLooKeng新下推框架助您一臂之力

LooK

「技术人生」专题第1篇:什么是技术一号位?

阿里巴巴中间件

技术 程序人生 方法论 思维

求求你别再用 MySQL offset 和 limit 分页了

xcbeyond

MySQL 5月日更

数据架构:数据冷热分离实践思考

程序员架构进阶

数据架构 架构设计 28天写作 5月日更 冷热分离

看了小姐姐的Spring SPI 总结,双非渣硕的我差点跳起来,被征服了

牛哄哄的java大师

Java

存储优化补充篇:Explain索引优化实操

Coder的技术之路

高并发 高并发系统设计 项目实战 数据库调优 索引优化

新书见面 | 《云原生时代的微服务架构实践》

Damon

微服务 云原生 5月日更

辞旧迎新岁岁新

Thomas

matlab

网络攻防学习笔记 Day7

穿过生命散发芬芳

5月日更 网络攻防

基于 MySQL 的消息队列系统架构设计文档

小遵

华仔架构训练营作业(模块三)

不听不听王八念晶

太好用了!斩获3个大厂Offer后,才发现学霸给的JVM笔记有多强大

飞飞JAva

Java

中国式美好假期:用AI地图,抢先体验未来出行

脑极体

【得物技术】软件工程与PlantUML实战

得物技术

软件工程 UML PlantUML 实战 得物技术

私域流量这件事,古代就有了……

白洞计划

Nginx-代理服务器

进击的梦清

nginx Docker Linux Docker-compose 代理

AI英雄出少年!奔赴星辰,他们正在创造黄金时代

百度大脑

AI

第一个鸿蒙应用

释缘

鸿蒙 HarmonyOS

模块1作业

圆心角

程序员应如何打破平庸,杜绝淘汰,避免内卷!【强烈建议收藏!】

程序员 ios开发

技术探索系列 - 轻松带你掌握JMM(2)

码界西柚

JVM JMM 5月日更

Docker内容信任退役,替代方案蓬勃发展_软件工程_InfoQ精选文章