gitlab-ci与docker集成问题

2018-12-10  本文已影响0人  多问Why

要用gitlab-ci加docker来构建项目,运行job时报错:

ERROR: Preparation failed: Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?

原因是我用root运行docker,而gitlab的runner是用gitlab-runner这个帐户来运行的,遇到了权限问题。
ls -slh /var/run/docker.sock

0 srw-rw---- 1 root root 0 Dec 7 10:16 /var/run/docker.sock

用su - gitlab-runner切换帐户后,也会报告相同的错

$ docker info
Cannot connect to the Docker daemon. Is the docker daemon running on this host?

解决方法是创建一个docker组
groupadd docker
并重启docker进程,这样它会自动用docker这个组在启动
systemctl restart docker
ls -slh /var/run/docker.sock

0 srw-rw---- 1 root docker 0 Dec 10 10:30 /var/run/docker.sock

最后把gitlab-runner加入docker组就可以了。
usermod -aG docker gitlab-runner

上一篇 下一篇

猜你喜欢

热点阅读