You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

通过Gitlab Webhook触发GCP Cloud Build时Dockerfile找不到求助

问题排查与解决

核心原因

通过GitLab Webhook触发Cloud Build时,Cloud Build会将GitLab仓库的代码拉取到/workspace/gitlab目录下,而非默认的/workspace根目录。你的Docker build步骤使用.作为上下文路径,会在/workspace下寻找Dockerfile,自然找不到实际位于/workspace/gitlab里的文件。

解决方案

方案1:修改Docker build的上下文路径

直接将docker build的目标路径改为./gitlab/,指向代码实际存放的目录:

- name: gcr.io/cloud-builders/docker
    args:
      - build
      - '-t'
      - '${_ARTIFACT_REPO}'
      - ./gitlab/

方案2:提前同步代码到/workspace根目录

在docker build步骤前添加一个复制步骤,将gitlab目录下的代码同步到/workspace:

- name: 'gcr.io/cloud-builders/gcloud'
    args: ['bash', '-c', 'cp -r /workspace/gitlab/* /workspace/']
  - name: gcr.io/cloud-builders/docker
    args:
      - build
      - '-t'
      - '${_ARTIFACT_REPO}'
      - .

验证方法

查看Cloud Build的构建日志,搜索"Cloning repository"相关内容,确认代码被拉取到的具体路径,以此验证上述判断是否正确。

内容的提问来源于stack exchange,提问作者Felix

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 14:25:29