permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock
·
这个错误表明当前用户没有操作 Docker 的权限。具体原因如下:
问题分析
- 根本原因
当前用户(erzhuochen)不在 docker用户组中
Docker 守护进程默认只允许 root用户和 docker用户组成员通过 Unix socket 进行通信
/var/run/docker.sock文件的权限设置为 root:docker - 权限验证
你可以通过以下命令验证:
// 查看 docker.sock 的权限
ls -la /var/run/docker.sock

// 查看当前用户是否在 docker 组
groups $USER
解决方案
方案1:临时解决(不推荐长期使用)
// 使用 sudo 运行 docker 命令
sudo docker ps
方案2:永久解决(推荐)
// 1. 将当前用户添加到 docker 用户组
sudo usermod -aG docker $USER
// 2. 注销并重新登录,或执行以下命令使组更改生效
newgrp docker
// 3. 验证是否生效
docker ps
更多推荐
所有评论(0)