gpt4 book ai didi

docker - Cloud Build无法创建镜像并将其发布到Container Registry

转载 作者:行者123 更新时间:2023-12-02 20:56:34 24 4
gpt4 key购买 nike

我的目标是为Django Rest Framework项目创建CI / CD。我正在使用Google Source Repository进行版本控制,并使用Google Compute Engine VM实例进行部署。这个项目的Dockerfile可以创建图像,我也可以运行该图像。
现在,在Source Repository上,当我将其他分支与master分支合并时,云触发器应该能够创建新图像,将其推送到Container Repository并使用新容器更新Google Compute Engine VM的现有实例。
到目前为止,每次对master分支Cloud Build - Trigger的推送都可以创建镜像并将其推送到Container Registry上。但是Cloud Build - Trigger使用Dockerfile而不是cloudbuild.yaml
这是我创建的cloudbuild.ymal

steps:
- name: 'gcr.io/myproject-100/docker'
args: [ 'build', '-t', 'gcr.io/myproject-100/dropoff:', '.' ]

- name: 'gcr.io/cloud-builders/gcloud'
args: [ 'compute', 'instance', 'update-container', 'dropoff-staging-v3', --zone='northeast1-a' ]

images:
- 'gcr.io/myproject-100/dropoff'
Dockerfilecloudbuild.yaml在项目文件夹的根目录中。当我运行 gcloud builds submit --config cloudbuild.yaml命令时,出现此错误-
ERROR: (gcloud.builds.submit) parsing cloudbuild.yaml: while parsing a block collection
in "cloudbuild.yaml", line 2, column 5
expected <block end>, but found u'?'
in "cloudbuild.yaml", line 4, column 5
  • 导致此错误的原因以及如何解决此问题。
  • 您认为我编写cloudbuild.yaml的方式是否可以帮助我实现目标。
  • 最佳答案

    那个cloudbuild.yaml似乎完全无关,
    因为第2行和第4行,第5列没有“u”;整行没有。
    有关正确设置缩进的信息,请参见YAML in a Nutshell。它看起来应该更像这样:

    steps:
    - name: 'gcr.io/dropoff-280002/docker'
    args: [ 'build', '-t', 'gcr.io/dropoff-280002/dropoff:', '.' ]
    - name: 'gcr.io/cloud-builders/gcloud'
    args: [ 'compute', 'instance', 'update-container', 'dropoff-staging-v3', --zone='northeast1-a' ]
    images:
    - 'gcr.io/dropoff-280002/dropoff'
    或参见已知的一种 cloudbuild.yaml ...。

    关于docker - Cloud Build无法创建镜像并将其发布到Container Registry,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62733109/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com