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

为什么Git仓库地址可正常docker build,docker-compose却报错找不到Dockerfile

问题原因

这是Docker Compose V2早期版本的已知解析缺陷:当build字段直接传入带身份认证令牌的HTTPS Git URL时,Compose会错误地将URL中的https://转义为https:/,导致BuildKit无法识别该地址为远程Git仓库,反而将其当做本地文件路径拼接后查找Dockerfile,最终抛出文件不存在的错误。
原生docker build命令没有经过Compose的URL解析逻辑,因此可以正常识别Git地址完成构建,和你本地的Dockerfile、令牌、分支有效性都没有关系。

解决方法

  • 升级Docker Compose到2.10.0及以上版本,该版本已经修复了这个Git URL解析问题
  • 如果暂时无法升级,将build字段调整为对象格式,明确指定context属性为Git地址即可规避字符串解析异常:
app:
  build:
    context: "https://[MY_GITHUB_OAUTH_TOKEN]@github.com/org/repo.git#develop"
  • 也可以将GitHub认证信息配置到本地Git的凭证管理工具中,去掉URL里的明文令牌直接写仓库地址,同样可以规避解析问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 06:36:04