当前位置: 首页 > 知识库问答 >
问题:

GPC-Cloud构建:推送docker映像时出错-本地不存在带有标记的映像

景安翔
2023-03-14

推送引用存储库[gcr.io/my-project/backend]本地不存在带有标记的映像:gcr.io/my-project/backend

我的CloudBuild.yaml

 # build the container image
  - name: 'gcr.io/cloud-builders/mvn:3.5.0-jdk-8'
    args: ['clean', 'install', 'jib:build', '-Dimage=gcr.io/$PROJECT_ID/backend']
    # push the container image
  - name: 'gcr.io/cloud-builders/docker'
    args: [ 'push', 'gcr.io/$PROJECT_ID/backend:latest']

共有1个答案

戚阳文
2023-03-14

您必须使用args标记图像:

- name: gcr.io/cloud-builders/docker
  id: 'backend'
  args: [
    'build',
    '-t', 'gcr.io/$PROJECT_ID/backend:${SHORT_SHA}',
    '-t', 'gcr.io/$PROJECT_ID/backend:latest',
    ...
  ]

似乎还缺少Images块:

images:
- 'gcr.io/$PROJECT_ID/backend:${SHORT_SHA}'
- 'gcr.io/$PROJECT_ID/backend:latest'

设置了图像标记后,错误消息就会消失。

gcloud auth configure-docker
 类似资料:
  • 当我使用docker-maven-plugin构建docker映像时,它失败了 错误:无法执行目标com.spotify:docker-maven-plugin:1.0.0:build(default-cli)on project spring-boot-basic:捕获异常:basedir/root/workspace/spring-boot-basic/spring-boot-basic/sp

  • 问题内容: 我们可以使用没有源映像(OS)的docker文件创建docker映像吗 我们不希望在所有应用程序docker映像中使用基本映像(centos或rhel)。我们想要将基本映像(centos或rhel)与应用程序映像分开,并在运行时将它们链接起来。可能吗? 当我 不使用 或构建docker映像时,docker抱怨:“提交前提供源映像” 我的docker文件如下所示: 问题答案: 您说过:“

  • 目前,我发现谷歌云构建发生在构建docker图像的时候(不像我想象的那样,它会构建我的图像,然后执行我的图像来完成所有的构建)。那是在这篇文章里 谷歌云构建的快速启动 我有一个Dockerfile现在很简单 我有一个单一的下载和提取下载任何工件(zip文件)从最后的单构建运行构建(只有修改的服务器被构建或依赖于上一个CI构建的变化的服务器被构建,就像下游库可能被更改)。第一行只是列出了我需要在一个

  • 我有以下文件夹结构: 这里,我的是: 当我运行时,我希望有两个输出图像,一个用于,一个用于。 我使用(仅与版本2的语法兼容)。

  • 问题内容: 我想找出本地是否存在带有特定标签的Docker映像。如果Docker客户端无法本地执行此操作,我可以使用bash脚本。 仅为了提供一些可能的bash脚本提示,运行命令的结果将返回以下内容: 问题答案: 我通常会测试的结果(如以下脚本所示): 但 由于 仅将其 作为参数,因此您需要对tag进行grep,而不使用 。 立即获取标签(docker 1.8+) 下面提到的另一种方法是使用doc

  • 问题内容: 我已经创建了自己的docker文件(该文件运行一个显示“ helloworld”的shell脚本)。图像是“ hellodocker”,标签是“ mytag”,我现在拥有: 如何将Docker映像推送到dockerhub?我用。这给出了“无此类ID”错误。我想念什么?提前致谢。 问题答案: 您要么在构建时就将其标记为标签,例如 或创建绑定到同一图像的新标签,即