我无法找到让所有这三项技术合作的方法。
我有Google Container Registry。在其中,我有2个私有图像,让我们称它们为A和B.我想创建一个实例如下的实例模板:
这就是我需要做的一切。我希望在启动脚本中执行此操作,这样我就可以使用普通图像作为基础,并且可以将其部署在prod中。
尝试了所有3个版本的Container Optimized OS和所有3个版本的CoreOS。每个都有不同的错误。
有些examples建议使用gcloud docker -- pull
,但gcloud在我尝试过的6种环境中都没有正确验证。
其他examples建议使用docker login -u oauth2accesstoken -p "$(gcloud auth application-default print-access-token)" https://gcr.io
,这也会失败。
我找到的唯一其他选项是docker login -u _json_key -p "$(cat keyfile.json)" https://gcr.io
,DID允许我随后拉取GCE图像。这种方法的缺点是如何在图像中获取密钥文件?我想我可以使用添加的密钥文件制作自定义图像,但我试图坚持使用我的两个docker run命令的股票图像而不是更多。这不可能吗?
答案 0 :(得分:1)
你看到了什么错误,特别是?
docker-credential-gcr能够从GCE元数据中提取访问令牌。它还可以通过在场景下执行gcloud config config-helper --format='value(credential.access_token)
来获取gcloud SDK的访问令牌。过去曾使用gcloud auth print-access-token
,但未得到官方支持。