问题描述

当在Linux系统安装完docker之后,直接使用普通用户执行docker命令,会出现没有权限的错误。

例如执行下面的命令:

docker pull ubuntu

会出现

Using default tag: latest
Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Post "http://%2Fvar%2Frun%2Fdocker.sock/v1.40/images/create?fromImage=ubuntu&tag=latest": dial unix /var/run/docker.sock: connect: permission denied

原因分析

这是因为当前用户没有docker的操作权限。

查看/var/run/docker.sock文件的权限,属于root用户docker组,其他用户没有权限。

 ls -l /var/run/docker.sock
srw-rw---- 1 root docker 0 2月  24 14:10 /var/run/docker.sock

 解决方法

将当前用户添加到docker组中,执行如下命令即可:

sudo usermod -a -G docker <用户名>

 

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐