如何在 Google Container Registry (GCR) 中创建 public 映像?
How do I create a public image in Google Container Registry (GCR)?
我使用 GCR 来存储我团队的私有 docker 注册表。我有一张 docker 图片,我想让它 public 只可见,以便多个项目可以使用它/与客户分享/等等。
如何在 Google 的 Container Registry 中制作 docker 图像 public?
1) 创建一个空的云项目来存放 public 注册表
2) 将某些内容推送到注册表(以便创建存储桶)
docker push gcr.io/{PROJECT_NAME}/{IMAGE_NAME}
3) 使桶中所有未来的对象 public:
gsutil defacl ch -u AllUsers:R gs://artifacts.{PROJECT_NAME}.appspot.com
4) 使桶中的所有当前对象public(例如,您刚刚推送的图像):
gsutil acl ch -r -u AllUsers:R gs://artifacts.{PROJECT_NAME}.appspot.com
5) 使桶本身 public(不由 -r
处理!):
gsutil acl ch -u AllUsers:R gs://artifacts.{PROJECT_NAME}.appspot.com
6) 根据需要上传更多图片
感谢 How do you make many files public in Google Cloud Storage? 在这里提供一些面包屑。
Google Cloud Registry (GCR) 现在允许您通过控制台轻松执行此操作。单击左侧面板上的 "Settings",然后将可见性更改为 Public。
我使用 GCR 来存储我团队的私有 docker 注册表。我有一张 docker 图片,我想让它 public 只可见,以便多个项目可以使用它/与客户分享/等等。
如何在 Google 的 Container Registry 中制作 docker 图像 public?
1) 创建一个空的云项目来存放 public 注册表
2) 将某些内容推送到注册表(以便创建存储桶)
docker push gcr.io/{PROJECT_NAME}/{IMAGE_NAME}
3) 使桶中所有未来的对象 public:
gsutil defacl ch -u AllUsers:R gs://artifacts.{PROJECT_NAME}.appspot.com
4) 使桶中的所有当前对象public(例如,您刚刚推送的图像):
gsutil acl ch -r -u AllUsers:R gs://artifacts.{PROJECT_NAME}.appspot.com
5) 使桶本身 public(不由 -r
处理!):
gsutil acl ch -u AllUsers:R gs://artifacts.{PROJECT_NAME}.appspot.com
6) 根据需要上传更多图片
感谢 How do you make many files public in Google Cloud Storage? 在这里提供一些面包屑。
Google Cloud Registry (GCR) 现在允许您通过控制台轻松执行此操作。单击左侧面板上的 "Settings",然后将可见性更改为 Public。