问题描述:

”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     #更新用户组

解决非root用户没有权限运行docker命令的问题相关推荐

  1. sudo命令_如何在非 sudo 用户下运行 docker 命令?

    当我们在一台 Linux 系统中安装了 Docker 后, 有时候会遇到下面这样的错误, 我们在运行 docker 的命令时必须加上 sudo, 例如: sudo docker ps, 但是我们其实更 ...

  2. root用户执行sourc /etc/profile命令提示权限不够

    root用户执行sourc /etc/profile命令提示权限不够 原因是: 我们在编辑 /etc/profile这个文件时删掉了这个文件的第一命令前面的 # 我们只需要加上 #,保存 这个文件 在 ...

  3. ylmf3.0 分配修改登录root用户管理权限的方法

    ylmf OS 3.0 分配修改登陆root用户管理权限的方法 ylmf是由ubuntu系统改装而来的,她跟ubuntu一样有一个与众不同的特点,那就是初次使用时,你无法作为root 来登录系统,为什 ...

  4. ylmf OS 3.0 分配修改登陆root用户管理权限的方法

    ylmf OS 3.0 分配修改登陆root用户管理权限的方法 ylmf是由ubuntu系统改装而来的,她跟ubuntu一样有一个与众不同的特点,那就是初次使用时,你无法作为root 来登录系统,为什 ...

  5. linux 新建用户没有权限使用sudo命令以root身份执行命令 解决方法

    问题来源: 我们使用sudo命令,让huazi用户使用root身份执行命令时报错: 我们信任您已经从系统管理员那里了解了日常注意事项. 总结起来无外乎这三点: #1) 尊重别人的隐私. #2) 输入前 ...

  6. Docker 容器中运行 Docker 命令

    Docker 容器中运行 Docker 命令 在使用 GitLab/Jenkins 等 CI 软件的时候需要使用 Docker 命令来构建镜像,需要在容器中使用 Docker 命令:通过将宿主机的 D ...

  7. 管理员权限运行CMD命令

    我们在日常工作使用CMD进行命令操作时,经常会遇到需要管理员权限才可以运行命令,那么怎么以管理员权限运行CMD命令? 其实很简单使用三步就行了"运行--cmd--CTRL+shift+ent ...

  8. 【docker系列】使用非root用户安装及启动docker(rootless模式运行)

    通过我之前的文章已经可以验证,在root用户下安装启动的容器存在安全问题.究其原因是因为: 容器内的root用户就是宿主机的root用户,容器内uid=1000的用户就是宿主机uid=1000的用户 ...

  9. linux useradd 数字,详解linux useradd用户组合权限管理等

    1,权限相关概念 Rwx 任何一个文件都应该由两部分组成,这两部分其实基于文件系统来组织,磁盘分区创建完成后,在高级格式化的时候,就把整个磁盘分区分成两部分,其中一部分是源数据,一部分是来放数据的,所 ...

  10. linux限制root用户访问权限,Linux中限制用户访问权限的3种方法

    现在需要限定某个用户对特定目录/文件的访问权限,或者把某个用户的访问范围限制在某个目录/文件中.现实情况下,还是能遇到这样的需求的,比如说ubuntu下有多个可登录用户,默认情况下,用户A的工作目录( ...

最新文章

  1. 在Ubuntu 16.04.6 LTS上安装python3.7和pip3后出现Command '('lsb_release', '-a')' 出错问题的解决方法
  2. 前端每日实战:93# 视频演示如何用纯 CSS 创作一根闪电连接线
  3. Java格式化日期用斜杠_[java工具类01]__构建格式化输出日期和时间的工具类
  4. STM32移植RT-Thread后的串口在调试助手上出现:(mq != RT_NULL) assert failed at rt_mq_recv:2085和不能接收数据问题讨论
  5. basler相机的触发线是那两脚_机器视觉相机类型以及接口标准详解
  6. java继承总结_java继承总结(二)
  7. javascript递归函数问题
  8. 设置 git pull 无需输入账号和密码
  9. 一文学会JVM常见参数设置+调优经验(JDK1.8)
  10. TV Input Framework --Android官方说明
  11. echarts 广州地图入门案例
  12. GOP和帧率、码率的关系
  13. 如何将高程数据转成南方CASS的DAT格式
  14. Silicon Labs CP210x USB to UART Bridge_6.6.6.14_4-8-2013_6.1_x64,驱动程序64位环境,ESP32
  15. 台式计算机启用时间查看,告诉你WIN7怎么查看电脑本次开机时间
  16. jfif格式怎么改成jpg或png格式?
  17. 2.4G功放芯片,支持国产
  18. matplotlib绘制引力波
  19. 二叉树的中序遍历 递归与非递归
  20. Unity发布小游戏(五):小游戏的打包与上传到CCD云服务器

热门文章

  1. xlsx的python处理
  2. html5 blockquote,HTML5 blockquote 标签
  3. 17分钟过桥,过桥最短时间问题
  4. KiCad坐标文件(.pos)转表格(.xlsx)工具
  5. 计算机共享网络的账号密码怎么设置密码,怎样才能给win10共享设置密码的操作方法...
  6. 银行柜员网申计算机水平要求高吗,银行笔试通过率:看你网申如何?
  7. Git学习————Eclipse工程中Git图标
  8. 解决Web部署 svg/woff/woff2字体 404错误(转)
  9. lpx寒假作业案例4
  10. Android应用内加载pdf 使用pdf.js