gpt4 book ai didi

docker - DinD gitlab-runner:警告服务Runner-xxx-project-xx-concurrent-x-docker-x可能无法正常启动

转载 作者:行者123 更新时间:2023-12-02 18:19:57 25 4
gpt4 key购买 nike

我在虚拟机上测试了gitlab-runner,它运行良好。我在使用docker-in-docker executor部分中遵循了本教程:

https://docs.gitlab.com/ee/ci/docker/using_docker_build.html

当我在开发服务器上注册具有完全相同配置的运行程序时,如果有提交但出现很多错误,则会调用运行程序:

*** WARNING: Service runner-XXX-project-XX-concurrent-X-docker-X probably didn't start properly.

ContainerStart: Error response from daemon: Cannot link to a non running container: /runner-XXX-project-XX-concurrent-X-docker-X AS /runner-XXX-project-XX-concurrent-X-docker-X-wait-for-service/service (executor_docker.go:1337:1s)

DEPRECATION: this GitLab server doesn't support refspecs, gitlab-runner 12.0 will no longer work with this version of GitLab

$ docker info
error during connect: Get http://docker:2375/v1.39/info: dial tcp: lookup docker on MY.DNS.IP:53: no such host
ERROR: Job failed: exit code 1

我相信所有这些错误都是由于第一个警告。我尝试过了 :
  • 向我的机器中添加另一个具有8.8.8.8 IP的DNS,同样的错误
  • 在/etc/gitlab-runner/config.toml中手动添加privileged = true,同样的错误,因此这不是由于privileged = true参数
  • 将tcp:// docker:2375替换为tcp:// localhost:2375,当docker info
  • 时在机器上找不到docker守护程序

    gitlab-ci.yml内容:
     image: docker:stable
    stages :
    - build

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

    services:
    - docker:dind

    before_script:
    - docker info

    build-folder1:
    stage: build
    script:
    - docker build -t image1 folder1/
    - docker run --name docker1 -p 3001:5000 -d image1
    only:
    refs:
    - dev
    changes:
    - folder1/**/*

    build-folder2:
    stage: build
    script:
    - docker build -t image2 folder2/
    - docker run --name docker2 -p 3000:3000 -d image2
    only:
    refs:
    - dev
    changes:
    - folder2/**/*
  • 如果分支dev的folder1被修改,我们将构建并运行docker1
  • 如果分支dev的folder2被修改,我们将构建并运行docker2

  • 开发服务器上的docker版本:
    docker -v 
    Docker version 17.03.0-ce, build 3a232c8

    开发服务器上的gitlab-runner版本:
    gitlab-runner -v
    Version: 11.10.1

    最佳答案

    我将尝试为您提供答案,因为当您尝试运行DinD时,我会解决相同的问题。

    这条信息:

    *** WARNING: Service runner-XXX-project-XX-concurrent-X-docker-X probably didn't start properly.



    表示您尚未正确配置运行器,或者未通过 gitlab-ci.yml文件链接。您应该能够在Gitlab的日志页面中查看运行器的ID。

    首先,请验证您是否使用正确的注册 token 输入了 gitlab-runner register 命令权限。

    其次,由于您是手动设置特定的运行程序,因此请确认已为其设置了一些唯一标签(例如 build_docker ),然后从 gitlab-ci.yml文件中对其进行调用。例如:
    ...
    build-folder1:
    stage: build
    script:
    - docker build -t image1 folder1/
    - docker run --name docker1 -p 3001:5000 -d image1
    tags:
    - build_docker
    ...

    这样就可以了。

    关于docker - DinD gitlab-runner:警告服务Runner-xxx-project-xx-concurrent-x-docker-x可能无法正常启动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56006951/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com