设置非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了:

相关推荐
汪碧康27 分钟前
【k8s-1.34.2安装部署】六.企业级部署cilium-1.18.4网络插件
网络·云原生·容器·kubernetes·k8s·cilium·xkube
回忆是昨天里的海29 分钟前
k8s暴露服务NodePort
云原生·容器·kubernetes
特级业务专家30 分钟前
这下发布不需要Jenkins了
linux·git·docker
回忆是昨天里的海35 分钟前
docker自定义网络-简单总结
运维·docker·容器
.生产的驴1 小时前
DockerCompoe 部署注册中心Nacos 一键部署 单机+Mysql8
java·linux·运维·spring boot·缓存·docker·doc
tzhou644522 小时前
Docker 部署 Nginx HTTPS 服务(CentOS 7)
nginx·docker·https
iconball2 小时前
个人用云计算学习笔记 --32 Docker和docker swarm
运维·笔记·学习·docker·容器·云计算
摇滚侠2 小时前
镜像容器相关命令,docker export/import/save/load/commit,导出容器给别人使用
运维·docker·容器
回忆是昨天里的海3 小时前
docker Compose-安装wordpress
运维·docker·容器
key2world3 小时前
Dockerfile 制作镜像和推送
docker·dockerfile·docker push