运行docker run提示no permission

方式一:

在CentOS 7上安装了docker
运行docker run时,提示no permission

在安装docker-ce的时候已经自动创建了docker用户组,但是需要手动将用户添加到docker用户组中

$ sudo usermod -aG docker $USER
或者
$ sudo usermod -aG docker 指定用户名

在将用户添加到docker用户组后,依然提示no permission
原因在于用户虽然加入了docker用户组,但是当前没有切换到docker用户组,所以还是没有权限,如果一个用户同时隶属于多个用户组,那么用户可以在用户组之间切换,就可以具有其他用户组的权限。

$ newgrp docker

方式二:

为/var/run/docker.sock添加权限,默认为

$ sudo ls -l /var/run/docker.sock
srw-rw----. 1 root docker 0 Aug  9 10:40 /var/run/docker.sock

直接修改此文件权限

$ sudo chmod 666 /var/run/docker.sock
$ sudo ls -l /var/run/docker.sock
srw-rw-rw-. 1 root docker 0 Aug  9 10:40 /var/run/docker.sock

现在就可以在非root用户下运行docker了

Was this article helpful?

Related Articles