用户在尝试连接到unix上的Docker守护程序套接字时拒绝了权限:///var/run/docker.sock

时间:2018-04-19 07:23:51

标签: docker

我正在尝试访问docker中的docker。使用steps mentioned here

看起来工作我可以使用root用户或使用sudo查看来自主机的所有图片和容器。

我想使用用户admin访问docker而不使用sudo。 我确实将用户admin添加到docker组中,但这没有用。

admin@07288dd81437:~$ sudo usermod -a -G docker admin 
admin@07288dd81437:~$ docker images
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.37/images/json: dial unix /var/run/docker.sock: connect: permission denied

1 个答案:

答案 0 :(得分:1)

补充组ID列表从父进程继承到子进程。您需要通过将此组添加到该列表中并使用 sg newgrp 命令的组合来创建新的shell会话,如下所示:

exec sg docker newgrp $(id -gn)

sg 命令运行 newgrp 命令而不更改当前组ID,有效添加 docker 组到补充组ID的列表。

不要简单地运行newgrp docker的原因是避免将当前组ID更改为 docker