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

GitLab Runner搭配Docker报错:客户端版本1.18低于最低要求1.24

解决GitLab Runner与Docker API版本不兼容问题

问题根源

你的GitLab Runner版本为11.2.0,这是2018年发布的老旧版本,它内置的Docker客户端API版本固定为1.18,和你当前使用的Docker 26.1.2(API 1.45)完全不匹配。报错里的1.18版本来自Runner内部的客户端库,和宿主机器上的Docker客户端/服务端版本无关。

解决步骤

1. 升级GitLab Runner(推荐方案)

这是彻底解决问题的唯一办法,老旧版本的Runner不仅存在API兼容问题,还可能有安全漏洞:

  • 停止Runner服务:
    sudo gitlab-runner stop
    
  • 卸载旧版本:
    sudo apt remove gitlab-runner
    
  • 安装适配Ubuntu 20.04的最新稳定版Runner(建议选择15.x及以上版本,官方支持与Docker 20+版本兼容)
  • 重新注册Runner(复用之前的GitLab地址、token、执行器配置等信息):
    sudo gitlab-runner register
    
  • 启动Runner服务:
    sudo gitlab-runner start
    

2. 临时绕过方案(仅限测试环境)

如果暂时无法升级Runner,可以通过让Runner调用宿主机器的Docker客户端来规避内部库的版本限制,但存在安全风险:

  • 修改Runner配置文件/etc/gitlab-runner/config.toml,在[runners.docker]区块添加:
    docker_host = "tcp://localhost:2375"
    
  • 修改Docker服务配置/etc/docker/daemon.json,开启TCP端口(注意:未做安全限制的TCP端口易被攻击):
    {
      "hosts": ["unix:///var/run/docker.sock", "tcp://0.0.0.0:2375"]
    }
    
  • 重启Docker服务:
    sudo systemctl restart docker
    

3. 验证修复

  • 执行测试作业,确认不再出现API版本过低的报错
  • 用以下命令确认版本信息:
    gitlab-runner --version
    docker version
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.24 01:26:01