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

AWS CodeBuild本地构建提示版本过旧但未指明对象的问题排查

问题分析与解决

版本来源说明

报错中的1.22是AWS CodeBuild本地构建镜像(public.ecr.aws/codebuild/local-builds:latest)内置的Docker客户端API版本,而1.24是你本地Docker守护进程要求的最低兼容客户端API版本。你本地Docker 25.0.3对应的API版本是1.44,远高于1.24,但镜像里的Docker客户端版本太旧,无法和高版本Docker守护进程通信。

解决步骤

  1. 确认本地Docker API版本
    执行以下命令查看Docker守护进程的API版本:

    docker version --format '{{.Server.APIVersion}}'
    

    你会得到类似1.44的结果,这是Docker 25.0.3对应的API版本。

  2. 使用匹配版本的CodeBuild本地镜像
    AWS为不同Docker版本提供了对应的local-builds镜像标签,你需要替换命令中的镜像为与本地Docker版本兼容的标签。例如,对应Docker 25.x的镜像标签可以用docker-25.0.3(如果该标签不存在,可使用docker-24.x系列标签,API向下兼容)。

    修改后的构建命令:

    codebuild_build.sh -i my-builder -a /tmp/aws-codebuild -c public.ecr.aws/codebuild/local-builds:docker-25.0.3
    

    (-c参数用于指定自定义的CodeBuild本地构建镜像)

  3. 验证修复
    重新执行上述命令,即可避免版本不匹配的报错。

额外说明

  • 不要使用latest标签的local-builds镜像,它的版本通常滞后,容易和新环境不兼容。
  • 你的docker-compose 1.29.2版本与此问题无关,无需升级。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.26 00:37:12