docker.sock权限被拒绝

164

当我尝试运行简单的Docker命令时,例如:

$ docker ps -a

我收到了一个错误信息:

权限被拒绝.../var/run/docker.sock: 连接:权限被拒绝

当我使用以下命令检查权限时:

$ ls -al /var/run/

我看到这行代码:

srw-rw---- root docker docker.sock

所以,我遵循许多论坛上的建议,并将本地用户添加到 docker 组中:
$ sudo usermod -aG docker $USER

但是这并没有帮助。我仍然收到完全相同的错误信息。我该如何解决?


7
你在做出修改后是否重新登录了?该修改在同一会话中不可用。sudo docker ps 命令是否可用? - Tarun Lalwani
我打开了一个新的终端,仍然收到这些错误信息。 - Jacobian
1
你必须重新启动Docker守护进程,否则它不会允许docker组的成员控制Docker守护进程。 - Murmel
但请记住,您基本上是将$USER赋予root权限,请参见:以非root用户身份管理Docker - Murmel
3
改变用户/组之后,您需要重新登录,而不仅仅是打开新终端。 - Sergius
显示剩余5条评论
12个回答

-2

以 root 用户身份进入容器 bash

docker exec -it --user root <dc5> bash

如果尚未创建 docker 组,请创建

groupadd -g 999 docker

将用户添加到 docker 组

usermod -aG docker jenkins

更改权限

chmod 777 /var/run/docker.sock

2
我强烈建议不要更改 docker.sock 的权限。这将使主机上的每个用户和进程都具有完全的 root 访问权限,而无需密码,并且其操作的日志记录最少。 - BMitch

-2

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接