项目 gitlab-runner 的执行者是 docker。我尝试运行 docker-in-docker 并从管道中收到以下错误:
<块引用>错误:作业失败(系统故障):来自守护进程的错误响应:OCI 运行时创建失败:container_linux.go:380:导致启动容器进程:process_linux.go:545:导致容器初始化:process_linux.go:508:设置procHooks 进程的 cgroup 配置导致:结果设备 cgroup 与目标模式不匹配:未知 (docker.go:385:0s)
我遵循了这个指南:https://www.digitalocean.com/community/tutorials/how-to-set-up-a-continuous-deployment-pipeline-with-gitlab-ci-cd-on-ubuntu-18-04 并且在我阅读了 gitlab CI/CD 和 gitlab-runner 的文档之后,但我不知道如何解决这个问题。
这是当前我的 config.toml 文件:
check_interval = 0
log_level = "debug"
[session_server]
session_timeout = 1800
[[runners]]
name = "docker-runner"
url = my-url
token = token
executor = "docker"
[runners.custom_build_dir]
[runners.cache]
[runners.cache.s3]
[runners.cache.gcs]
[runners.cache.azure]
[runners.docker]
tls_verify = false
image = "docker:20"
privileged = true
disable_entrypoint_overwrite = false
oom_kill_disable = false
disable_cache = false
volumes = ["/cache"]
shm_size = 0
这是我的 gitlab-ci.yaml
stages:
- publish
variables:
DOCKER_TLS_CERTDIR: ""
publish:
image: docker:20
stage: publish
tags:
- publish
services:
- docker:20-dind
script:
- docker version
首先我不明白错误信息,其次如何解决?
答案 0 :(得分:0)
我通过降级 docker 解决了这个问题:
sudo apt-get install --reinstall docker-ce=5:18.09.9~3-0~ubuntu-bionic docker-ce-cli=5:18.09.9~3-0~ubuntu-bionic docker-ce-rootless-extras containerd.io=1.3.9-1
问题是我在装有 Ubuntu 18 的 V-Server (Virtuozzo) 上运行。看来 Virtuozzo 目前不支持最新的 Docker 引擎。