问题标签 [google-container-registry]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
jenkins-plugins - 谷歌容器注册和詹金斯
我一直在尝试设置 Jenkins 以使用教程中的 Kubernetes。我的一切工作都很好,但我一直在尝试使用 Kubernetes Jenkins 插件添加一些自定义图像。似乎任何公共图像都可以正常工作,但是当我创建一个图像并将其放入我的私有容器注册表时,Jenkins 奴隶惨遭失败。
我想了解如何在 Jenkins 中最好地利用我的 Container Registry 中的图像。我找到了本教程(https://cloud.google.com/solutions/jenkins-on-container-engine#customizing_the_docker_image)。当我通过构建 jenkins-slave 映像并将其推送到我的仓库来尝试这些步骤时,它不起作用。每次它抱怨奴隶离线并且无法联系到。
json - 如何让 Google Container Registry 接受我的 json 凭据?
我正在尝试在不使用 gcloud 界面的情况下将 Google Container Registry 与 GitLab CI 一起使用。
使用“使用 JSON 密钥文件”部分下列出的文档: https ://cloud.google.com/container-registry/docs/advanced-authentication
我已将我的服务帐户凭据文件下载为 JSON 文件:
然后我尝试使用指定的命令登录:
这会产生以下错误:
docker login https://gcr.io
为我提供了用户名/密码交互式提示,因此据我所知,我的本地 docker 安装不是问题。
有什么我想念的吗?
google-container-registry - 如何将谷歌注册表(gcr.io)添加为第三方注册表(docker cloud)?
我关注了这个Google 容器 - 使用访问令牌,但它不起作用。
错误是:无法使用 gcr.io 进行身份验证:401 客户端错误:未经授权的 url:eu.gcr.io/v1/repositories/organization/repository/tags
但是,它使用 docker login 和 docker pull 在我的机器上工作。
看起来令牌很好,因为如果我输入错误,它会返回此错误:
无法使用 gcr.io 进行身份验证:403 客户端错误:未经授权的 url:eu.gcr.io/v1/repositories/organization/repository/images
有人可以帮我吗?谢谢 :)
docker - gcloud docker authentication x509错误
尝试推送到 google 容器存储库时出现身份验证错误。我看到了很多关于此的问题,并将根据其他建议完成我已完成的步骤。我在 Windows 上本地工作,使用最新版本的 gcloud 和 docker。
让我们开始,我有一个具有完全所有者权限的活动服务帐户。
我可以很好地了解我的项目和存储桶。
我可以为我的服务帐户下载一个 .json 密钥并在本地激活它。
我有一组工作的 docker 和登录
我用主机名和项目 ID 标记我的测试图像(hello-world)并试一试
好的,让我们看看这里、这里和这里建议的高级身份验证方法
文档说我可以绕过 gcloud 并直接使用 docker,只需传递我的 .json 密钥文件即可登录。
文档说分两步执行此操作,让我们尝试一下:
另一个建议是使用临时令牌
太好了,让我们再次尝试推动。
我看到有人建议只推送到存储桶而不是项目 ID,这只是挂起
编辑:尝试建议解决方案
docker - 无法从 Google Compute Engine 访问 Google Container Registry
我正在尝试将 Docker 映像从 Google Container Registry 获取到 Google Compute Engine 实例上。(我需要的图片已经成功上传到GCR。)
我已经使用登录,
gcloud auth login
然后尝试gcloud docker pull -- us.gcr.io/app-999/app
了结果ERROR: (gcloud.docker) Docker is not installed.
。我尝试使用oauth进行身份验证并通过正常的 docker 调用进行拉取。当我查看位于 的文件时,我看到了我的凭据
.docker/config.json
。这样做,看起来它会起作用,但最终会像这样结束:mbname@instance-1 ~ $ docker pull -- us.gcr.io/app-999/app Using default tag: latest latest: Pulling from app-999/app b7f33cc0b48e: Pulling fs layer 43a564ae36a3: Pulling fs layer b294f0e7874b: Pulling fs layer eb34a236f836: Waiting error pulling image configuration: unauthorized: authentication required
这看起来像是进步,因为至少它试图下载一些东西。
我也在本地机器上尝试了这两种方法,两种方法都成功了。
我错过了什么吗?
谢谢你的帮助。
PS 我还尝试从另一个注册表(Docker Hub)加载一个容器,效果很好,但我需要多个容器,并且希望降低费用。
gcloud - 从 Bitbucket 管道请求构建(Google Container Builder)时 gcloud 崩溃
我们使用 bitbucket 托管 git repo 并开始使用管道进行测试,但现在我正在考虑下一步,部署。
我想利用 Google Container Builder 并从管道中触发它。有一个Dockerfile
应kubernetes/nginx/
发送到 Google Container Builder 的位置。
当我在本地运行以下命令时,它可以完美运行:
但作为管道的一部分,我收到以下错误:
错误:gcloud 崩溃(AttributeError):“NoneType”对象没有“替换”属性
gcloud版本:
我检查过的事情:
- 我的身份验证正确,所以这不是问题。
- 我还验证了构建所需的文件是可访问的。
google-container-registry - Bitbucket Pipelines:使用环境变量从 GCR 中提取图像失败
因此,我尝试使用我的 Google 容器注册表中的图像,因为这是我需要进行身份验证的私有注册表。
显然我不想每小时更新我的身份验证令牌以使我的管道正常工作,所以我需要去获取 json 密钥文件。
当我按如下方式定义图像时,它会起作用:
但这意味着您的 json 密钥文件已公开,可供所有有权访问管道的人查看,而不是我想要的。
然后我将 JSON 文件的内容放入环境变量中,并将实际的 json 替换为环境变量,如下所示:
不知何故,在第二种情况下它不起作用:(
google-cloud-platform - 无法从 Google Container Registry 将 docker 映像拉入 Kubernetes Pod
我已经阅读了这个问题和这个问题,并使用带有项目的服务帐户 JSON 密钥为 Google Container Registry 创建了我的 Kubernetes 密钥:所有者和查看者权限。我还通过控制台验证了该图像确实存在于 Google Container Registry 中。
我也读过这个文件。
当我运行时:
然后在用户界面中,单击“+”符号,指定我的图像的 URL,如下所示:
然后单击“高级选项”并指定导入的秘密。
几秒钟后,我看到了这个错误:
如果我查看 Secret 文件 (.dockerconfigjson) 中的内容,就像:{" https://us.gcr.io ": {"email": "admin@domain.com", "auth": "longtexthere" }}
可能是什么问题?
google-container-registry - 谷歌云构建器 - Gradle
我了解 Google Container Builder 支持 Gradle。然而我找不到任何例子。我对在构建中明确设置 gradle 版本特别感兴趣。
docker - docker push 从给定的提交和之后的完整性失败
我正在尝试将 docker 容器推送到 Google Cloud Platform 上的私有注册表:
gcloud docker -- push gcr.io/<project-name>/<container-name>
校验和失败:
然后我从容器中删除了该文件(以及更多),提交了更改,并尝试推送新图像。我得到了同样的错误。
有什么方法可以在不推送包含损坏文件的提交的情况下推送我的图像吗?任何洞察为什么新的提交以同样的方式失败?