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

私有GitLab Runner(Docker执行器)报错:缺失Docker配置

问题:GitLab Runner Docker执行器报错"missing docker configuration"

执行GitLab项目Job时,反复出现如下报错:

Preparing the "docker" executor
00:09
ERROR: Preparation failed: missing docker configuration
Will be retried in 3s ...
ERROR: Preparation failed: missing docker configuration
Will be retried in 3s ...
ERROR: Preparation failed: missing docker configuration
Will be retried in 3s ...
ERROR: Job failed (system failure): missing docker configuration

环境配置信息

VPS上的config.toml配置

concurrent = 1
check_interval = 0
shutdown_timeout = 0

[session_server]
  session_timeout = 1800

[[runners]]
  name = "furmanus"
  url = "https://gitlab.com"
  id = <id_here>
  token = "<token_here>"
  token_obtained_at = <obtain_date>
  token_expires_at = <expiry_date>
  executor = "docker"
  [runner.docker]
    tls_verify = false
    image = "gitlab/gitlab-runner:latest"
    priviledged = false
    disable_cache = false
    volumes = ["/cache"]
    pull_policy = "if-not-present"
    cache_dir = "/cache/gitlab"

项目.gitlab-ci.yml示例

image: node:18-alpine

stages:
  - install
  - build

install:
  stage: install
  tags:
    - furmanus
  script:
    - npm install
  cache:
    key:
      files:
        - package.json
        - package-lock.json
    paths:
      - node_modules
    policy: push

build:
  stage: build
  tags:
    - furmanus
  dependencies:
    - install
  script:
    - echo "install"

已知条件:VPS上gitlab-runner用户已具备Docker操作权限和配置文件读取权限。

问题排查与修复方案

1. 核心错误:配置项拼写错误

config.toml中[runner.docker]段的priviledged是拼写错误,正确的配置项应为privileged(少写了一个字母e)。这个错误会导致GitLab Runner无法正确识别Docker执行器的配置,从而抛出"missing docker configuration"错误。

2. 修复步骤

  • 编辑/etc/gitlab-runner/config.toml,将priviledged = false修改为privileged = false
  • 重启GitLab Runner服务:
    sudo gitlab-runner restart
    

3. 可选优化建议

  • 默认镜像调整:当前配置的image = "gitlab/gitlab-runner:latest"是GitLab Runner自身的镜像,并非适合执行Job的通用基础镜像,建议替换为alpine:latest或ubuntu:latest这类通用镜像,避免潜在的环境不兼容问题。
  • 缓存目录配置:cache_dir在Docker执行器中是容器内的路径,当前配置的/cache/gitlab需确保对应的volume挂载正确,不过这不是本次报错的直接原因。

完成上述修复后,重新触发Job即可正常执行。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.08 17:27:31