将签名的docker图像推送到GCR



有点像GCR新手的问题。

我找不到任何关于是否可以将签名的docker图像推送到GCR的文档。所以我尝试了一下,但失败了,下面出现了以下错误。我首先构建了一个docker镜像,然后用"docker-tag GCR.io/my project/image-name:tag"标记它以指向我在GCR中的项目然后尝试使用签名"docker信任签名gcr.io/my项目/image-name:tag">

错误:联系公证服务器时出错:拒绝:项目"gcr.io:my-project"的令牌交换失败。请在的云控制台中启用Google Container Registry APIhttps://console.cloud.google.com/apis/api/containerregistry.googleapis.com/overview?project=gcr.io:my-项目,然后再执行此操作。

我的项目的GCR API已启用,我有权推送它。

我需要在GCP中的项目中做更多的事情才能推送签名图像吗?还是它不受支持?

如果稍后,如何(作为图像消费者(验证图像的完整性?

谢谢,J

谷歌云平台目前不支持此功能。

您可以在此处提交功能请求以请求其实现。

要验证图像的完整性,请使用图像摘要。基本上,它们是与图像相关联的加密散列。您可以将提取的图像的哈希值与期望的哈希值进行比较。此处的命令参考

Google现在实现了基于Kritis的二进制授权和"证明"的概念。其目的是在您的CI/CD管道中使用此功能,以确保图像已正确创建和验证。

这里有完整的文档,但这个过程基本上包括通过PKIX签名对图像进行签名,然后使用gcloud工具创建证明。

然后,您在GKE集群上指定一个二进制授权策略,以强制执行在允许在集群中使用映像之前需要哪些证明。

最新更新