为什么 Gitlab 跑步者会抛出"Is the docker daemon running?"



我希望得到一些关于Gitlab runner实例的帮助投掷";无法连接到位于的Docker守护进程tcp://localhost:2375.docker守护进程正在运行吗">

我的gitlab-ci.yml:

image: docker:18.09-dind
variables:
DOCKER_HOST: tcp://localhost:2375
DOCKER_DRIVER: overlay2

stages:
- build
- test
before_script:
- export REACT_APP_USERS_SERVICE_URL=http://127.0.0.1
job:
stage: build
script:
- apk add --update --no-cache gcc g++ make python2 python2-dev py-pip python3-dev curl
- curl -L "https://github.com/docker/compose/releases/download/v2.2.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
- chmod +x /usr/local/bin/docker-compose
- docker-compose up -d --build
- docker logs testdriven_e2e:latest -f
after_script:
- docker-compose down

错误输出:

(32/34) Installing pkgconf (1.6.1-r1)
(33/34) Installing python2-dev (2.7.18-r0)
(34/34) Installing python3-dev (3.7.10-r0)
Executing busybox-1.30.1-r2.trigger
OK: 339 MiB in 73 packages
$ curl -L "https://github.com/docker/compose/releases/download/v2.2.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
Dload  Upload   Total   Spent    Left  Speed
100   664  100   664    0     0   2699      0 --:--:-- --:--:-- --:--:--  2688
100 23.5M  100 23.5M    0     0  3546k      0  0:00:06  0:00:06 --:--:-- 4406k
$ chmod +x /usr/local/bin/docker-compose
$ docker-compose up -d --build
Cannot connect to the Docker daemon at tcp://localhost:2375. Is the docker daemon running?
ERROR: Job failed: exit code 1
FATAL: exit code 1  

提前感谢您的任何建议。

您必须在docker服务中添加docker,然后将守护进程主机设置为主机名docker(即dind服务的主机名(

image: docker
services:
- docker:dind
variables:
DOCKER_HOST: tcp://docker:2375
DOCKER_TLS_CERTDIR: ""
DOCKER_DRIVER: overlay2

摘要

@sytech ans帮助了我。但如果你仍然没有问题,请检查以下内容

  1. 注册gitlab runner时,请确保您拥有--docker-privileged

示例:

sudo gitlab-runner register -n --url https://your_gitlab.com --registration-token project_token --executor docker --description "Deployment Runner" --docker-image "docker:stable" --tag-list deployment --docker-privileged
  1. 允许Gitlab runner运行docker命令
sudo usermod -aG docker gitlab-runner
  1. 如@sytech所述,也在yml文件中添加以下代码
variables:
DOCKER_HOST: tcp://docker:2375
DOCKER_TLS_CERTDIR: ""
DOCKER_DRIVER: overlay2

如果你还有问题,请告诉我

相关内容

最新更新