一、问题描述
在运行docker命令,如docker version或docker info时,docker报错:
ERROR: 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.24/info: dial unix /var/run/docker.sock: connect: permission denied
二、问题分析
从上面的报错信息上我们知道,这句话的大致意思就是在我门试图通过socket去连接docker时权限不被允许。
这是应为socket需要root用户才能访问,当前用户的权限不够,所以被禁止了。
三、解决方法
1.切换成root用户操作。这是最直接的方法。切换命令:
su root
这是需要输入root用户的密码,输入即可正常操作了。
2.添加docker的用户组,把当前用户加入组中。
sudo groupadd docker #添加用户组
sudo gpasswd -a username docker #将当前用户添加至用户组
newgrp docker #更新用户组
这个时候我们就不会收到任何报错信息了。
四、gpasswd命令用法
gpasswd -h
此命令查看
基本用法就是:gpasswd [选项] 组名
,例如gpasswd -a user docker
就是向组docker中添加用户user,-d就是删除该组中的用户。