library/notary上游 Notary 项目 已于 2025 年 7 月 30 日归档。更多信息,请参见 notaryproject/.github#70。
维护者:
Docker, Inc.
获取帮助:
Docker 社区 Slack、Server Fault、Unix & Linux 或 Stack Overflow
Dockerfile 链接无支持的标签
提交问题:
[***]
支持的架构:(更多信息)
无支持的架构
已发布镜像 artifact 详情:
repo-info 仓库的 repos/notary/ 目录(历史记录)
(镜像元数据、传输大小等)
镜像更新:
official-images 仓库的 library/notary 标签
official-images 仓库的 library/notary 文件(历史记录)
本描述的来源:
docs 仓库的 notary/ 目录(历史记录)
Notary 仓库包含两个独立应用:Notary Server(服务器)和 Notary Signer(签名者)。这些应用的镜像标签分别为 "server-" 和 "signer-"。虽然服务器可配置为纯内存运行,但此配置不适用于生产环境,因此应同时运行服务器和签名者。
确保运行的镜像具有相似的版本标签。例如,若运行 server-0.2.0 标签,也应运行相应的 signer-0.2.0 标签。运行不同版本的服务器和签名者并非支持的配置。
Notary 服务器为 Notary 客户端和 Docker 命令行工具的 Docker Content Trust 功能管理 JSON 格式的 TUF(更新框架)元数据。它需要同伴 Notary 签名者实例和 MySQL(或 MariaDB)数据库。
镜像中包含以下示例配置:
json{ "server": { "http_addr": ":4443", "tls_key_file": "/certs/notary-server.key", "tls_cert_file": "/certs/notary-server.crt" }, "trust_service": { "type": "remote", "hostname": "notarysigner", "port": "7899", "tls_ca_file": "/certs/root-ca.crt", "key_algorithm": "ecdsa", "tls_client_cert": "/certs/notary-server.crt", "tls_client_key": "/certs/notary-server.key" }, "logging": { "level": "info" }, "storage": { "backend": "mysql", "db_url": "server@tcp(mysql:3306)/notaryserver?parseTime=True" } }
您必须提供的组件包括证书和密钥,以及 notarysigner 和 mysql 主机名的链接。root-ca.crt 文件使 Notary 服务器能够识别有效的签名者,服务器通过 GRPC 接口使用双向 TLS 与其通信。notary-server.crt 和 notary-server.key 用于向外部客户端和签名者实例标识此服务。所有证书和密钥文件必须可被容器内创建的 notary 用户读取,该用户拥有 notary-server 进程。
如需不同配置,应使用您自己的 Dockerfile 包装此镜像。
有关如何配置 Notary 服务器的更多详情,请阅读 文档。
Notary 签名者是 Notary 服务器的支持服务。它管理私钥并执行所有签名操作。需要 MySQL(或 MariaDB)数据库。
镜像中包含以下示例配置:
json{ "server": { "http_addr": ":4444", "grpc_addr": ":7899", "tls_cert_file": "/certs/notary-signer.crt", "tls_key_file": "/certs/notary-signer.key", "client_ca_file": "/certs/notary-server.crt" }, "logging": { "level": "info" }, "storage": { "backend": "mysql", "db_url": "signer@tcp(mysql:3306)/notarysigner?parseTime=True" } }
您必须提供的组件包括证书和密钥,以及 mysql 主机名的链接。notary-server.crt 文件使 Notary 签名者能够识别有效的服务器,签名者通过 GRPC 接口使用双向 TLS 与其通信。notary-signer.crt 和 notary-signer.key 用于向外部客户端和服务器实例标识此服务。所有证书和密钥文件必须可被容器内创建的 notary 用户读取,该用户拥有 notary-signer 进程。
如需不同配置,应使用您自己的 Dockerfile 包装此镜像。
有关如何配置 Notary 签名者的更多详情,请阅读 文档。
Notary 服务器和签名者均使用 migrate 工具 管理数据库更新。迁移文件可在 此处 找到,为有序的纯 SQL 文件列表。migrate 工具管理架构版本,确保迁移正确起始和结束。
强烈建议创建独立的数据库和权限受限的用户,使服务器无法访问签名者的数据库,反之亦然。
查看此镜像所包含软件的 许可信息。
与所有 Docker 镜像一样,这些镜像可能还包含其他软件,这些软件可能采用其他许可(例如基础发行版中的 Bash 等,以及所包含主要软件的任何直接或间接依赖项)。
一些能够自动检测到的其他许可信息可能位于 repo-info 仓库的 notary/ 目录 中。
对于任何预构建镜像的使用,镜像用户有责任确保对该镜像的任何使用符合其中包含的所有软件的相关许可。
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务