从项目注册表访问 Docker 容器

女士

所以我将我的 docker 镜像上传到我的项目注册表。我可以导航到https://console.cloud.google.com/gcr/images/并且我看到我的图片在那里列出。

现在我想在这个项目上运行一个虚拟机,在这个项目上使用 docker 来运行这个图像。

这是我的 VM 中的命令:

sudo /usr/bin/docker run eu.gcr.io/my-project-name/example001

回应是:

Unable to find image 'eu.gcr.io/.../example001:latest' locally
/usr/bin/docker: Error response from daemon: unauthorized: You don't have the needed permissions to perform this op
eration, and you may have invalid credentials. To authenticate your request, follow the steps in: https://cloud.goo
gle.com/container-registry/docs/advanced-authentication.
See '/usr/bin/docker run --help'.

请参阅所附图片。如果我将“eu.gcr.io/...”定义为我的项目路径,我可以列出我的图像。但是机器似乎在“.gcr.io”上运行,因此无法访问我的图像?我将如何解决这个问题 - 为什么我的图像在“eu.gcr.io”上而机器在“.gcr.io”上,我找不到改变它的方法(将图像移动到 gcr.io 或移动机到,eu.gcr.io)。但是我不确定这是否是问题。

也许这是docker的身份验证问题? 在此处输入图片说明

亚历山大·布什科夫斯基

VM 基本上不能在“.gcr.io”上,它可以在非欧洲地区/地区运行,但应该没有问题。

从 GCP 访问控制的角度来看,注册表只是一个存储桶。所以我相信您首先需要检查的是 VM 是否可以访问 Google Cloud Storage。使用 gcloud:

gcloud compute instances describe <instance-name>

检查 VM 是否具有从 devstorage 读取的范围:

服务帐户:
- 电子邮件:[email protected]
  范围:
  - https://www.googleapis.com/auth/devstorage.read_only
  - ...

这个范围应该到位以从注册表中读取:

https://www.googleapis.com/auth/devstorage.read_only

如果您在 VM 上没有这样的范围,但配置了 gcloud,则可以使用 gcloud 作为凭证​​助手:

gcloud auth configure-docker

如您提到的文档中所述:https : //cloud.google.com/container-registry/docs/advanced-authentication#gcloud_as_a_docker_credential_helper

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Docker推送到Azure容器注册表:访问被拒绝

从GCR导出Docker映像(Google容器注册表)

无法将映像推送到 docker 容器注册表

将Docker容器从外部注册表部署到Heroku

从本地私有 docker 注册表创建 Singularity 容器

AWS Sagemaker 中的用户 Docker Hub 注册表容器

在注册表中导出IBM Docker容器映像

限制对gitlab容器注册表的访问

我如何将 azure 容器实例 docker 提交到 azure 容器注册表

无法使用GCP容器注册表中的映像启动Docker容器

Azure容器-无法登录到私有注册表“从docker注册表收到错误响应”

无法使用docker-compose文件将docker映像推送到Azure注册表容器

使用 docker-compose 构建 docker 镜像并推送到镜像/容器注册表?

无法访问 docker 注册表

Docker无法从OpenShift访问注册表

如何设置 Jib 容器以通过 docker 远程注册表进行身份验证以提取图像?

使用Powershell将Docker映像推入Azure容器注册表存储库

Docker映像在容器注册表和云存储中不断出现

Azure ACR 任务无法从 Azure 容器注册表中提取 docker 映像

使用私有端点将 docker 镜像推送到容器注册表

防止在Azure容器注册表中覆盖Docker映像标记

服务帐户需要什么权限才能将 docker 映像推送到容器注册表?

将Docker映像从gitlab-ci推送到Azure容器注册表

如何使用Docker Hub注册表部署到Azure Web应用程序容器

Google容器注册表是否支持Docker远程API V2

运行由VS2019创建的Azure Docker容器注册表

是否可以运行 Docker Windows 容器并编辑注册表 (regedit)?

NPM安装始终无法在随机时间获取Docker容器中的NPM注册表

将单个Docker映像从VSTS构建/发布定义推入AWS弹性容器注册表(ECR)