由于使用的是sudo安装docker,因此会致使一个问题。以普通用户登陆的情况下,在使用docker images
时必须添加sudo
,那么如何让docker免sudo
依然可用呢?因而开始搜索解决方案。linux
当以普通用户身份去使用docker images
时,出现如下错误:docker
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.26/images/json: dial unix /var/run/docker.sock: connect: permission denied
能够看都,最后告知咱们时权限的问题。那么在linux文件权限有三个数据左右drwxrwxrwx
,json
d
表明该文件是一个文件夹上图是报错文件的权限展现,能够看到其属主为root
,权限为rw
,可读可写;其属组为docker
,权限为rw
,可读可写。若是要当前用户可直接读取该文件,那么咱们就为当前用户添加到docker
属组便可。缓存
若是尚未 docker group 就添加一个:bash
sudo groupadd docker
将用户加入该 group 内。而后退出并从新登陆就生效啦。socket
sudo gpasswd -a ${USER} docker
重启 docker 服务spa
sudo service docker restart
切换当前会话到新 group 或者重启 X 会话unix
newgrp - docker
注意:最后一步是必须的,不然由于 groups 命令获取到的是缓存的组信息,刚添加的组信息未能生效,因此 docker images 执行时一样有错。rest