Ser*_*Cio 6 gitlab docker gitlab-ci-runner docker-daemon cicd
尝试将 gitlab 中的项目转换为 docker 镜像。gitlab 是自托管的。这是我得到的错误:
Running with gitlab-runner 13.12.0 (7a6612da)
on test -KnwQXuT
Preparing the "docker" executor
ERROR: Failed to remove network for build
ERROR: Preparation failed: Got permission denied while trying to connect to the Docker daemon
socket at unix:///var/run/docker.sock: Get http://%2Fvar%2Frun%2Fdocker.sock/v1.25/info: dial
unix /var/run/docker.sock: connect: permission denied (docker.go:858:0s)
Run Code Online (Sandbox Code Playgroud)
我添加了一个跑步者,注册了它,使用 docker 模板创建了一个 gitlab-ci.yml ,我没有修改它。作为解决方案,我chmod 666 /var/run/docker.sock
在添加跑步者之前和之后尝试过,但它不起作用。我还在运行和注册 docker runner 之前添加了 sudo 但仍然没有成功。我找到了另一个选项将我的 docker 用户添加到 docker 组,但我的所有用户都在 docker 组中。docker runner 作为 docker 镜像运行。我不知道该怎么办...请帮忙。我尝试了大约 10 天,但没有成功...提前致谢
小智 14
sudo groupadd docker
sudo usermod -aG docker ${USER}
sudo chmod 666 /var/run/docker.sock
sudo systemctl restart docker
小智 6
当您使用 gitlab 自托管运行器时,默认情况下,它会创建一个名为gitlab-runner的用户。您需要为其分配权限。
sudo usermod -aG docker gitlab-runner
Run Code Online (Sandbox Code Playgroud)
这将为 gitlab-runner 分配正确的权限,并应在该虚拟机上提取 docker 映像。