📌  相关文章
📜  dial unix var run docker.sock: connect: permission denied - 不管是什么(1)

📅  最后修改于: 2023-12-03 15:14:40.914000             🧑  作者: Mango

Dial unix var run docker.sock: connect: permission denied

介绍

这个错误通常出现在使用 Docker 时,一般是由于当前用户没有访问 /var/run/docker.sock 文件的权限所导致。Docker 在运行时需要访问 /var/run/docker.sock 文件来与 Docker 引擎进行通信,因此如果用户没有访问该文件的权限,则会出现此错误。

解决方案
1. 将当前用户添加到 docker 组

将当前用户添加到 docker 组中,以便用户可以访问 /var/run/docker.sock 文件。

sudo usermod -aG docker $USER

然后注销并重新登录以使更改生效。

2. 使用 sudo 访问 docker 命令

可以使用 sudo 命令来访问 Docker 命令,该命令会以管理员权限来执行:

sudo docker <command>
3. 修改 Docker 配置文件

可以修改 Docker 配置文件 /etc/docker/daemon.json,以便 Docker 引擎允许其他用户访问 /var/run/docker.sock 文件。在该文件中添加以下内容:

{
  "group": "dockerroot"
}

其中 group 字段用于指定允许访问 /var/run/docker.sock 文件的用户组,dockerroot 为该用户组的名称。

注意:修改完之后需要重启 Docker 引擎才能生效。

参考资料