docker命令需要sudo
新安装docker后无法普通用户无法使用docker命令
原因分析:
docker进程的socket用户试用了root.root属主和属组,导致需要sudo才可以链接服务端socket
[hehe@li ~]$ sudo ls -l /var/run/docker.sock
srw-rw---- 1 root root 0 6月 7 01:47 /var/run/docker.sock
配置无需sudo
#检测是否有docker组
[admin@web ~]$ grep docker /etc/group
dockerroot:x:885:admin
# 将当前用户添加至dockerroot组
[admin@web ~]$ sudo usermod -aG dockerroot admin
#重载会话(无需exit)
[admin@web ~]$ newgrp - dockerroot
#修改systemd进程,将docker属组改为dockerroot组,添加属组字段
[Service]
Group=dockerroot
#重新加载systemd进程
[admin@web ~]$ sudo systemctl daemon reload
#重启docker进程
[admin@web ~]$ sudo systemctl restart docker
#查看socket用户组
[admin@web ~]$ sudo ls -l /var/run/docker.sock
srw-rw---- 1 root dockerroot 0 10月 23 14:54 /var/run/docker.sock
#无sudo命令测试
[admin@web ~]$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES