前言
docker往往是使用root用户,用yum 或者 apt-get install 等安装命令安装,所以在安装完成后,只有root用户可以执行。其他用户并不能执行。
案例
比如使用docker version查看版本:
[gxp5@gxp5 ~]$ docker version Client: Docker Engine - Community Version: 19.03.9 API version: 1.40 Go version: go1.13.10 Git commit: 9d988398e7 Built: Fri May 15 00:25:27 2020 OS/Arch: linux/amd64 Experimental: false 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.40/version: dial unix /var/run/docker.sock: connect: permission denied
出现permission denied情况。
授权
docker在安装完成后,会创建docker用户组,只需要将要用执行权限的用户添加到该用户组即可。
使用拥有sudo权限的sudoers执行添加用户组命令添加即可,用于以gxp5为例,使用root进行授权:
[root@gxp5 home]# sudo usermod -aG docker gxp5
结果
完成授权后,gxp5用户就可以执行docker了。
[gxp5@gxp5 ~]$ docker run hello-world WARNING: IPv4 forwarding is disabled. Networking will not work. Hello from Docker! This message shows that your installation appears to be working correctly. ...