请关注本头条号,每天坚持更新原创干货技能文章。

如需学习视频,请在微信搜索"大众年夜众号“智传网优”直接开始自助视频学习

1. 序言

如果您在Ubuntu上运行Docker,但被提示Permission Denied(权限谢绝),该当处理?本教程将对此问题提出办理方法。

phpexec权限问题运行Docker碰到权限问题应当若何处置 AJAX

最近,我在Ubuntu上安装了Docker,安装是非常大略。
但当我试图运行docker命令时,它抛出了这个缺点:

GotpermissiondeniedwhiletryingtoconnecttotheDockerdaemonsocketatunix:///var/run/docker.sock:Gethttp://%2Fvar%2Frun%2Fdocker.sock/v1.39/containers/json:dialunix/var/run/docker.sock:connect:permissiondenied

Ubuntu上运行Docker提示Permission Denied(权限谢绝),如何处理?

Got permission denied while trying to connect to the Docker daemon socket(在试图连接到Docker daemon socket时被谢绝)

2. 运行docker权限谢绝的2种办理方法

想知道如何办理这个问题?下面先容2种办理方法。

运行docker权限谢绝的2种办理方法

2.1 方法1:用sudo运行所有docker命令

如果你当前有sudo访问权限,你可以用sudo运行每个docker命令,你就不会再看到Got permission denied while trying to connect to the Docker daemon socket(在试图连接到Docker daemon socket时被谢绝)这个缺点提示了。

sudodockerps-a

CONTAINERIDIMAGECOMMANDCREATEDSTATUSPORTSNAMES13dc0f4226dcubuntu"bash"17hoursagoExited(0)16hoursagocontainer-22d9a8c190e6cubuntu"/bin/bash"17hoursagoCreatedcontainer-1

但是用sudo运行每个docker命令非常未便利。
如果你忘却利用sudo命令,你会得到'权限谢绝'的提示。

2.2 方法2: 在没有sudo的情形下运行docker命令

要在没有sudo的情形下运行docker命令,您可以将目标用户(系统用户)添加到docker组。

首先,利用groupadd命令创建docker组。
目标组可能已经存在,但是运行组创建命令不会有什么影响。

sudogroupadddocker

现在您已经有了docker组,利用usermod命令将您的用户添加到这个组中。
如果想把当前用户加入这个xesg中,您可以利用$user变量。

sudousermod-aGdocker$USER

通过列出docker组的用户来验证您的用户是否已被添加到docker组。
您可能须要注销并再次登录。

sudogroups

如果你的组和docker组没有列出,乃至在注销后也没有列出的话,你可能须要重新启动Ubuntu。
为了避免这种情形,你可以利用newgrp命令,像下面这样的命令:

newgrpdocker

现在,如果您考试测验在不该用sudo的情形下运行docker命令,该当可以正常事情。

3. 可能碰着的其它问题

在某些情形下,您可能须要向某些文件添加额外的权限,特殊是在过去利用sudo运行docker命令的情形下。

可能碰着的其它问题

您可以考试测验变动文件/var/run/docker.sock的所属组。

sudochownroot:docker/var/run/docker.sock

您还可以考试测验变动目录~/.docker所属的组

sudochown"$USER":"$USER"/home/"$USER"/.docker-Rsudochmodg+rwx"$HOME/.docker"-R

然后考试测验运行docker与sudo。
现在该当没问题了。

4. 总结

我希望这个教程能够帮助您办理"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.39/containers/json: dial unix /var/run/docker.sock: connect: permission denied”这个缺点提示。
如有任何问题欢迎留言。

本文已同步至博客站,尊重原创,转载时请在正文中附带以下链接:https://www.linuxrumen.com/rmxx/1665.html

点击理解更多,快速查看更多的技能文章列表。