普通用户使用docker命令的时候经常会提示权限不足

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.26/containers/json: dial unix /var/run/docker.sock: connect: permission denied

在这里插入图片描述
这个错误一般使用sudo 命令即可解决
在这里插入图片描述
但是每次使用docker命令都需要添加一个sudo,还是很麻烦;所以需要一个一劳永逸的方法:将当前用户加入docker用户组
1.添加docker用户组

sudo groupadd docker

在这里插入图片描述
2.将当前登录用户加入到docker用户组

sudo gpasswd -a $USER docker

在这里插入图片描述
3.更新用户组以使修改生效

newgrp docker

在这里插入图片描述
4.经过测试发现还是会报没有权限的问题
在这里插入图片描述
通过错误日志猜测可能是/var/run/docker.sock文件权限不够导致的
5.查看/var/run/docker.sock文件的权限

ll /var/run/docker.sock

在这里插入图片描述
文件所有者为root所属组也为root,文件所有者和所属组对该文件有读写权限,其他用户对该文件没有任何权限
6.尝试给其他用户添加读写权限

sudo chmod o+rw /var/run/docker.sock

在这里插入图片描述
7.再次测试

在这里插入图片描述
已经不在需要使用sudo

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐