Docker daemon socket权限不足

摘要:
而默认情况下,Unixsocket属于root用户,需要root权限才能访问。docker安装之后,默认会创建组docker,因此不需要再创建了。执行命令使用root账号登录目标服务器#将登陆用户develop加入到docker用户组中gpasswd-adevelopdocker#更新用户组newgrpdocker切换到develop用户进行测试sudevelopdockerps输出正常,则表示成功了。
一、概述

普通用户执行命令:docker ps报错,具体信息如下:

docker: Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Post http://%2Fvar%2Frun%2Fdocker.sock/v1.38/containers/create: dial unix /var/run/docker.sock: connect: permission denied.

出现上面问题是因为:

Manage Docker as a non-root user
即:管理Docker的不是root用户

原文表述:

The docker daemon binds to a Unix socket instead of a TCP port. By default that Unix socket is owned by the user root andother 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.

即:docker进程使用Unix Socket而不是TCP端口。而默认情况下,Unix socket属于root用户,需要root权限才能访问。

二、解决方案
方案一:使用sudo获取管理员权限,运行docker命令
方案二:添加docker group组,将用户添加进去

环境说明

操作系统:centos 7.6

docker版本:19.03.5

由于采用的是jumpserver方式登录,开发人员使用的是develop账号。

docker安装之后,默认会创建组docker,因此不需要再创建了。

执行命令

使用root账号登录目标服务器

#将登陆用户develop加入到docker用户组中
gpasswd -a develop docker
#更新用户组
newgrp docker

切换到develop用户进行测试

su develop
docker ps

输出正常,则表示成功了。

本文参考链接:

https://www.jianshu.com/p/a0cf03605c42

免责声明:文章转载自《Docker daemon socket权限不足》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇MFC-CString与int互相转化将Mongodb的表导入到Hive中下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

k8s部署

环境初始化,所有节点   1.配置hostname hostnamectl set-hostname master hostnamectl set-hostname node      2.配置/etc/hosts 127.0.0.1 localhost localhost.localdomain localhost4 localhost4....

通过docker安装elasticsearch和安装ik分词器插件及安装kibana

前提: 已经安装好docker运行环境; 步骤: 1.安装elasticsearch 6.2.2版本,目前最新版是7.2.0,这里之所以选择6.2.2是因为最新的SpringBoot2.1.6默认支持的就是6.2.2的,而7.x是有很大更新的,SpringBoot正常集成的情况下无法和es最新版本兼容; 这里只需要记住Document的一个index只能创...

Docker笔记(一) Docker基础概述

Docker学习 Docker概述 Docker为什么会出现? 特性 容器 虚拟机 启动 秒级 分钟级 硬盘使用 一般为 MB 一般为 GB 性能 接近原生 弱于 系统支持量 单机支持上千个容器 一般几十个 Docker技术优点 更快速的交付和部署 更便捷的升级和扩缩容 更简单的系统运维 更高效的计算资源利用 一致的运行环境...

docker安装db2数据库

查询可安装的db2镜像 # docker search db2 [root@docker-servers ~]# docker search db2 INDEX NAME DESCRIPTION S...

Docker 初窥(有一大坑,注意根目录磁盘爆满问题,易导致开机黑屏)

由于最近用到Temporal_Segment_Networks(TSN)光流提取,涉及Docker操作,故本节将简单讲解docker的一些使用命令,基于docker,利用宿主机上的dataset,提取对应的光流信息。 注意:Docker大佬请绕行,本章适合像本人一样的超级小白【手动狗头】。 如果用完docker,退出容器之后,之前容器内保存下来的数据将会...

Delphi用Socket API实现路由追踪

Windows自带的Tracert是向远程主机发送ICMP包进行追踪,但是目前很多主机关闭了ICMP答复,这个工具不太好使了~~~~~原理咱知道,正规的Trace不就是发送TTL依次递增的UDP包吗?什么网关和路由敢随意丢弃我们的UDP包而...unit YRecords;interfaceusesWindows;constPACKET_SIZE = 32...