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

Gitlab DIND Runner TLS相关错误 健康检查超时启动慢如何解决

问题根因

你遇到的服务启动超时核心是新版docker:dind镜像对非TLS的2375端口默认启用了强制启动延迟机制,日志中Startup is intentionally being slowed down就是该机制的提示,默认10秒的延迟超出了Gitlab Runner默认的服务健康检查阈值,最终触发超时报错。
日志中could not change group /var/run/docker.sock to docker: group docker not found属于非核心警告,不影响DIND功能正常运行,无需处理。

解决方案

方案1:继续使用非TLS模式(快速生效)

  • 修改config.toml中dind服务的启动参数,新增--tls=false主动关闭TLS校验,跳过强制延迟逻辑:
[[runners.docker.services]]
  name = "docker:dind"
  command = ["--registry-mirror", "http://192.168.1.21", "--tls=false"]
  • 删除[runners.docker]段volumes配置中的/certs/client挂载项,修改后为:
volumes = ["/cache"]
  • 确认[[runners]]段的environment配置中已经保留DOCKER_TLS_CERTDIR=""、DOCKER_HOST=tcp://docker:2375/两项配置即可。

修改完成后重启Gitlab Runner服务生效。

方案2:启用TLS模式(更安全,无安全警告)

如果接受TLS校验,可通过如下配置彻底消除安全警告同时解决超时问题:

  • 移除[[runners]]段environment配置中的DOCKER_TLS_CERTDIR=""项,将DOCKER_HOST修改为TLS专用端口:
environment = ["DOCKER_DRIVER=overlay2", "DOCKER_HOST=tcp://docker:2376/"]
  • 将[runners.docker]段的tls_verify配置改为true,保留volumes中的/certs/client挂载项即可。
验证方法

配置生效后可运行如下最简CI任务验证功能正常:

test-dind-connect:
  image: docker:latest
  script:
    - docker info

任务执行成功输出Docker daemon信息即表示配置生效。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 00:36:06