我关注了将 GitLab 与 Kubernetes 集群连接 | GitLab和 GitLab Runner,现在尝试遵循GitLab CI/CD Pipeline Configuration Reference,但遇到以下错误:
无法连接到 unix:///var/run/docker.sock 上的 Docker 守护程序。docker 守护进程是否正在运行?
工作:
Running with gitlab-runner 11.10.1 (1f513601)
on runner-gitlab-runner-5b8d5bf7db-5phqs 3gRXuKPT
Using Kubernetes namespace: gitlab-managed-apps
Using Kubernetes executor with image docker:latest ...
Waiting for pod gitlab-managed-apps/runner-3grxukpt-project-18-concurrent-1m7ttl to be running, status is Pending
Running on runner-3grxukpt-project-18-concurrent-1m7ttl via runner-gitlab-runner-5b8d5bf7db-5phqs...
Initialized empty Git repository in /builds/X/test/.git/
Fetching changes...
Created fresh repository.
From https://gitlab.X.com/X/test
* [new branch] master -> origin/master
Checking out 72b6895d as master...
Skipping Git submodules setup
$ docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" $CI_REGISTRY
WARNING! Using --password via the CLI is insecure. Use --password-stdin.
Login Succeeded
WARNING! Your password will be stored unencrypted in /root/.docker/config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credentials-store
$ docker build --pull -t "$CI_REGISTRY_IMAGE" .
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
ERROR: Job failed: command terminated with exit code 1
.gitlab-ci.yml
:
# This file is a template, and might need editing before it works on your project.
# Official docker image.
image: docker:latest
services:
- docker:dind
before_script:
- docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" $CI_REGISTRY
build-master:
stage: build
script:
- docker build --pull -t "$CI_REGISTRY_IMAGE" .
- docker push "$CI_REGISTRY_IMAGE"
only:
- master
build:
stage: build
script:
- docker build --pull -t "$CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG" .
- docker push "$CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG"
except:
- master
请指教。