Dockerコンテナーgitlab-ci-runnerを起動し、次に、dockerをexecutorとして使用し、node:latestをdockerイメージとして使用して、ランナーを登録しました。しかし、コミットをgitlabにプッシュすると、次のエラーが発生します。
Running with gitlab-runner 11.3.1 (0aa5179e)
on docker-ci 0f9fe2c4
Using Docker executor with image node:latest ...
ERROR: Preparation failed: Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running? (executor_docker.go:1150:0s)
これが私のgitlabconfig.tomlです:
concurrent = 1
check_interval = 0
[session_server]
session_timeout = 1800
[[runners]]
name = "docker-ci"
url = "http://gitlab.xxxxxx.com/"
token = "0......fc5"
executor = "docker"
[runners.docker]
tls_verify = false
image = "node:latest"
privileged = false
disable_cache = false
volumes = ["/cache"]
shm_size = 0
[runners.cache]
[runners.cache.s3]
[runners.cache.gcs]
私は以下を使用してコンテナを起動します:
Sudo docker run -d --name gitlab-runner --restart always \
-v ~/srv/gitlab-runner/config:/etc/gitlab-runner \
-v ~/var/run/docker.sock:/var/run/docker.sock \
gitlab/gitlab-runner:latest
以下を使用して登録します。
Sudo docker run --rm -t -i -v ~/srv/gitlab-runner/config:/etc/gitlab-runner gitlab/gitlab-runner register
Dockerを初めて使用しますが、エラーの理由が見つかりません。助けてくれる人はいますか?
CLIコンテナまたはgitlab-ci-runner container
は、ホストマシンのDockerソケットをコンテナにマウントする必要があるため。これにより、コンテナはホストマシンのDockerデーモンを使用してコンテナを実行し、イメージを構築できるようになります。
gitlab-ci-runnerの実行コマンドを変更する必要があります。
docker run -d --name gitlab-runner --restart always \
-v /srv/gitlab-runner/config:/etc/gitlab-runner \
-v /var/run/docker.sock:/var/run/docker.sock \
gitlab/gitlab-runner:latest
私の場合、私のマシンにはDockerがありませんでした。これがインストールのドキュメントです https://docs.docker.com/install/linux/docker-ce/ubuntu/#install-docker-ce
Sudo apt-get install docker-ce docker-ce-cli containerd.io