如何解决非root用户没有权限运行docker命令的问题?

简介: Got permission denied while trying to connect to the Docker daemonsocket at unix:///var/run/docker.sock: Gethttp://%2Fvar%2Frun%2Fdocker.sock/v1.26/images/json: dial unix/var/run/docker.sock: connect: permission denied

问题描述:

”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“

原因(摘自docker手册):

Manage Docker as a non-root user

The docker daemon binds to a Unix socket instead of a TCP port. By
default that Unix socket is owned by the user root and other users can
only access it using sudo. The docker daemon always runs as the root
user.

If you don’t want to use sudo when you use the docker command, create
a Unix group called docker and add users to it. When the docker daemon
starts, it makes the ownership of the Unix socket read/writable by the
docker group.

答案显而易见,要不用root用户,要不创建一个名为docker的用户组,并把你需要使用docker的非root用户添加到该组中,如果还不会搞,继续往下看。

方法1:
使用sudo获取管理员权限,运行docker命令,这个方法在通过脚本执行docker命令的时候会有很多局限性

方法2:
docker守护进程启动的时候,会默认赋予名为docker的用户组读写Unix socket的权限,因此只要创建docker用户组,并将当前用户加入到docker用户组中,那么当前用户就有权限访问Unix socket了,进而也就可以执行docker相关命令

sudo groupadd docker #添加docker用户组
sudo gpasswd -a $USER docker #将登陆用户加入到docker用户组中
newgrp docker #更新用户组
阿里云双11服务器一折起

目录
相关文章
|
容器 Docker Linux
如何将当前用户添加到Docker组?
【7月更文挑战第25天】
5205 2
如何将当前用户添加到Docker组?
|
缓存 Ubuntu Linux
Docker Buildx 简介与安装指南
Docker Buildx 是一个强大的工具,提供了多架构构建、并行构建和高级缓存管理等功能。通过正确安装和配置 Buildx,可以显著提升 Docker 镜像的构建效率和灵活性。希望本文能帮助你更好地理解和使用 Docker Buildx,以提高开发和部署的效率。
7732 16
|
Ubuntu Linux 网络安全
Docker&Docker Compose安装(离线+在线)
Docker&Docker Compose安装(离线+在线)
26346 1
|
Kubernetes 监控 Java
发布策略:蓝绿部署、金丝雀发布(灰度发布)、AB测试、滚动发布、红黑部署的概念与区别
发布策略:蓝绿部署、金丝雀发布(灰度发布)、AB测试、滚动发布、红黑部署的概念与区别
4599 1
|
Linux Windows
Nomachine 最简安装与使用指南
这是一篇2022年Nomachine软件的极简安装与使用指南,包括Windows和Linux系统下的安装步骤,以及如何在Windows系统上通过Nomachine远程控制Linux系统的方法。
Nomachine 最简安装与使用指南
|
监控 Devops Linux
推荐类似宝塔的开源面板工具
本文介绍了几款类似于宝塔面板的开源服务器管理工具,包括Websoft9、1Panel、Webmin和Cockpit。这些工具在易用性、功能性和安全性方面各有千秋,能够满足不同用户的需求,从一键部署应用到高级服务器管理,提供了丰富的选择。
2974 1
推荐类似宝塔的开源面板工具
阿里云镜像公共仓库使用
这篇文章介绍了如何使用阿里云镜像公共仓库,包括登录管理界面、创建命名空间、推送和拉取镜像的详细步骤。
14818 5
阿里云镜像公共仓库使用
|
域名解析 关系型数据库 MySQL
基于PHPEnv的本地环境搭建—PHP第一个项目:HelloWorld(从安装到运行)
该文章指导如何使用PHPEnv搭建本地PHP开发环境,并通过一个简单的"Hello World"程序演示从安装到运行的全过程。
基于PHPEnv的本地环境搭建—PHP第一个项目:HelloWorld(从安装到运行)
|
并行计算 PyTorch 算法框架/工具
【已解决】RuntimeError: CuDA error: no kernel image is available for execution on the device
【已解决】RuntimeError: CuDA error: no kernel image is available for execution on the device
12508 1

热门文章

最新文章