permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock
这个错误提示说明当前用户没有权限访问 Docker 的守护进程(/var/run/docker.sock),这通常是因为当前用户不在 docker 用户组中,或者没有使用 sudo 执行命令。
✅ 解决方案:
方式一:使用 sudo
最直接的方式是在命令前加上 sudo:
sudo docker compose -f pwd.yml up -d
如果你是临时运行一次,可以直接用这个方式。
方式二:将用户加入 docker 用户组(推荐长期解决方案)
-
将当前用户加入
docker组:sudo usermod -aG docker $USER -
然后 注销并重新登录,或者运行:
newgrp docker -
验证是否成功:
docker info如果没有提示权限错误,就说明你已经成功了。
附:为什么会这样?
/var/run/docker.sock 是一个 Unix 套接字,默认只有 root 和 docker 用户组的成员才能访问。普通用户尝试访问会遇到 “permission denied” 错误。


