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

相关推荐
小徐敲java1 小时前
(运维)1Panel服务器面板Docker部署
运维·服务器·docker
曾几何时`3 小时前
Docker容器化部署编译运行模块
运维·docker·容器
直饮水观察哨4 小时前
商用净水器亲测对比,哪个更专业?
容器
Suchadar5 小时前
Docker基础命令(二)——数据卷管理端口映射与容器互联
运维·docker·容器
firstacui5 小时前
Docker容器网络管理与容器数据卷管理
运维·docker·容器
codeRichLife6 小时前
docker拷贝,导入/导出等常用命令
docker
努力搬砖的咸鱼7 小时前
部署你的第一个应用到 K8s
微服务·云原生·容器·kubernetes
lpruoyu8 小时前
【Docker进阶-01】Docker隔离原理与可视化界面-Portainer
docker
舰长1158 小时前
使用 kubeadm搭建生产环境的单 master 节点 K8S 集群(一)
云原生·容器·kubernetes
Swift社区9 小时前
Docker 构建 Python FastAPI 镜像最佳实践
python·docker·fastapi