为什么运行docker命令返回"/var/run/docker.sock"权限拒绝?

现象

# docker ps
FATA[0000] Get http:///var/run/docker.sock/v1.16/containers/json: 
dial unix /var/run/docker.sock: permission denied.
Are you trying to connect to a TLS-enabled daemon without TLS?

分析解决

首先你得确认/var/run/docker.sock文件是否存在

# ls -l /var/run/docker.sock
srw-rw---- 1 root docker 0 sty 28 11:53 /var/run/docker.sock

解决方案现在很清楚了,通过添加你的登陆用户到docker用户组来解决这个问题,如下所示:

# sudo gpasswd -a ${USER} docker

/etc/group文件内容应该可以看出变化了

# cat /etc/group | grep ^docker

下面我们打开一个新的终端来检查登陆用户是否加入到了docker用户组,应该存在于如下命令结果中

# groups

如果你的登陆用户还没有加入到docker用户组,你可以尝试重启机器。如果你可以正常重启docker容器,就不需要重启服务器了。

# sudo service docker.io restart

然后你运行docker ps应该就没有问题了!

0 个评论

要回复文章请先登录注册