Docker免sudo运行后权限失效,VS Code无法附加容器求助
Docker权限不足问题解决方法
核心原因
Docker守护进程的套接字(/var/run/docker.sock)权限变更,或当前用户被移出docker用户组,导致无需sudo的访问权限丢失。
步骤1:检查并修复用户组权限
- 查看当前用户所属组,确认是否包含
docker:id -nG - 如果没有
docker组,将当前用户添加到该组:sudo usermod -aG docker $USER - 无需重启系统,直接在当前会话中加载新的组权限:
newgrp docker
步骤2:修复Docker套接字权限
部分场景下(如系统更新、Docker重启),docker.sock的权限会被重置,执行以下命令修复:
sudo chown root:docker /var/run/docker.sock sudo chmod 660 /var/run/docker.sock
步骤3:验证修复效果
运行以下命令测试是否无需sudo即可访问Docker:
docker ps
若能正常返回容器列表,说明权限已恢复。此时重启VS Code,即可正常附加容器。
持久化修复(防止重启后复发)
若重启系统后问题再次出现,需配置Docker守护进程默认使用docker组:
- 创建或编辑
/etc/docker/daemon.json文件:sudo nano /etc/docker/daemon.json - 添加以下内容:
{ "group": "docker" } - 重启Docker服务:
sudo systemctl restart docker
内容的提问来源于stack exchange,提问作者buvanesh buvhi
相关产品推荐
相关产品推荐

