docker错误:Got permission denied while trying to connect to the Docker daemon socket at....

目录

•错误

•解决方案

•原因


•错误

在使用执行docker命令的时候,总是提示如下报错,我一开始没当一回事儿,后面一些指令不能用了,才发现事情并没有这么简单,就在这里把它记录下来,具体报错内容和图片如下。

Got permission denied while trying to connect to the Docker daemon socket at 
unix:///var/run/docker.sock: Post 
http://%2Fvar%2Frun%2Fdocker.sock/v1.26/containers/create: dial unix /var/run/docker.sock: 
connect: permission denied

•解决方案

出现这个问题的原因其实很简单,是因为执行指令的账户没有权限,我在执行指令所使用的账户是普通账户,没有root权限,所以就会出现这个问题,解决办法很简单,要么切换root身份重新登录执行,或者在指令前加sudo执行,以验证权限,如下

sudo docker images

•原因

为什么会出现这个问题呢?在默认情况下,docker 的 Unix Socket属于root用户,当然其他用户可以使用sudo方式来访问。因为这个原因, docker 进程就一直是root用户运行的。为了在使用 docker 命令的时候前边不再加sudo,我们需要创建一个叫 docker 的用户组,并且为用户组添加用户。然后在 docker 进程启动的时候,我们的 docker 群组有了 Unix Socket 的所有权,可以对 Socket 文件进行读写。总结一点,其实原因可能是没有创建用户组,或者将用户添加进用户组中,如果不想每次使用sudo的话,可以创建用户组或者将用户添加进用户组中就行。

发布了78 篇原创文章 · 获赞 440 · 访问量 73万+

猜你喜欢

转载自blog.csdn.net/DBC_121/article/details/103882383