2

运行时docker:dind我不能使用docker login命令和任何其他 docker 命令。

我的用例是我有一个 Nexus Docker Registry,我正在尝试通过 GitLab CI 连接到这个注册表。

docker run --rm -it docker:stable-dind docker login -u user -p password https://registry.mine.io

给:

Warning: failed to get default registry endpoint from daemon (Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?). Using system default: https://index.docker.io/v1/
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
4

2 回答 2

3

只需添加--privileged到命令。

docker run --rm -it --privileged docker:stable-dind docker login -u user -p password https://registry.mine.io

于 2018-03-20T18:20:10.827 回答
-1

我在这篇文章 https://www.santoshsrinivas.com/docker-on-ubuntu-16-04/中找到了相同问题的解决方案

您需要使用 gitlab-ci 工作人员在机器上运行下一个命令

sudo groupadd docker
sudo gpasswd -a gitlab-runner docker
sudo service docker restart
于 2019-03-14T10:44:08.493 回答