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

Docker部署的GitLab Runner执行docker build时出现lookup docker域名解析错误

报错原因

该错误本质是GitLab CI任务运行环境中的Docker客户端无法找到对应的Docker服务端,无法完成docker域名的DNS解析,属于Docker executor类型的GitLab Runner常见配置缺失问题。

解决方案

1. 修改GitLab Runner配置

你通过Docker镜像部署的Runner需要先调整特权权限与挂载配置:

  • 找到你挂载到宿主机的Runner配置目录,打开config.toml文件
  • 定位到当前使用的Runner对应的[[runners]]配置段,修改docker执行器配置如下:
[[runners]]
  executor = "docker"
  [runners.docker]
    privileged = true
    volumes = ["/cache", "/var/run/docker.sock:/var/run/docker.sock"]
  • 保存配置后重启Runner容器:docker restart <你的Runner容器名称>

2. 调整.gitlab-ci.yml配置

以下两种方案二选一即可:

方案A:Docker-in-Docker模式(官方推荐,适合多租户场景)

在yml文件顶部添加服务与全局变量配置:

services:
  - name: docker:dind
    command: ["--tls=false"]

variables:
  DOCKER_HOST: tcp://docker:2375
  DOCKER_DRIVER: overlay2
  DOCKER_TLS_CERTDIR: ""

方案B:挂载宿主机Docker套接字(更轻量,适合个人/小团队使用)

无需配置dind服务,只需要添加变量指定Docker服务地址:

variables:
  DOCKER_HOST: unix:///var/run/docker.sock

注意:使用该方案需确认上一步Runner的volumes配置已经添加了/var/run/docker.sock的挂载项

3. 验证配置

重新触发CI任务,先执行docker info命令,无报错且能正常输出Server端信息即代表配置生效,后续可正常执行docker build构建Spring Boot镜像。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.22 05:27:00