设置非root账号不用sudo直接执行docker命令

环境信息

操作系统:Ubuntu 20.04 LTS 桌面版

Docker:19.03.10

问题

当前账号非root,直接执行docker xxx命令会报以下错误:

bash 复制代码
docker images
复制代码
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/images/json: dial unix /var/run/docker.sock: connect: permission denied

执行sudo docker xxx命令,会提示输入当前账号密码,然后可以成功

每次执行docker命令都要输入密码不方便,尤其是在shell脚本中就更麻烦了,一起来解决这个问题

方法

创建名为docker的组,如果之前已经有该组就会报错,可以忽略这个错误:

bash 复制代码
sudo groupadd docker

将当前用户加入组docker:

bash 复制代码
sudo gpasswd -a ${USER} docker

重启docker服务(生产环境请慎用):

bash 复制代码
sudo systemctl restart docker

添加访问和执行权限:

bash 复制代码
sudo chmod a+rw /var/run/docker.sock

操作完毕,验证一下,现在可以不用带sudo了:

相关推荐
爱学习 爱分享6 小时前
k8s 开启防火墙,容器内部无法访问外部 ip
tcp/ip·容器·kubernetes
养肥胖虎7 小时前
Docker学习笔记:后端、数据库和反向代理怎么一起跑起来
后端·nginx·docker·postgresql·go·部署
叶帆7 小时前
【YFIOs】Docker方式部署
运维·docker·容器
岳来8 小时前
Docker 的 --privileged 特权模式学习
docker·容器·--privileged
脑子加油站11 小时前
k8s-持久化存储
云原生·容器·kubernetes·k8s-持久化存储
NiceCloud喜云12 小时前
IntelliJ IDEA 保姆级安装 + ClaudeAPI 配置教程
java·开发语言·前端·ide·chrome·docker·intellij-idea
咖啡里的茶i12 小时前
在Docker环境中安装Hadoop cluster
docker
AOwhisky13 小时前
Docker 学习笔记:镜像分发、容器运行与资源限制
笔记·学习·docker
跨境数据猎手14 小时前
反向海淘代购系统 Docker + Kubernetes
docker·容器·kubernetes
冷小鱼14 小时前
从 Docker 到容器编排:框架选型与指令详解实战指南
运维·docker·容器·k8s·docker compose·docker swarm