zoukankan      html  css  js  c++  java
  • 启动Docker“Got permission denied while trying to connect to the Docker daemon socket“问题(亲测可用)

    1 问题描述

    在终端执行"docker version"命令,出现如下报错:

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

    2 原因分析

    来自docker mannual:

    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.

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

    3 解决方法

     sudo groupadd docker #添加docker用户组
    
    sudo gpasswd -a $XXX docker #检测当前用户是否已经在docker用户组中,其中XXX为用户名,例如我的,liangll
    
    sudo gpasswd -a $USER docker #将当前用户添加至docker用户组
    
    newgrp docker #更新docker用户组

    4 检查是否更新成功

    再次执行"docker version"命令,发现不再出现"Got permission denied"权限报错

    5 References

    赞赏码

    非学,无以致疑;非问,无以广识

  • 相关阅读:
    数据模型Model(I)
    泛型
    iOS开发之widget实现
    ios断点续传:NSURLSession和NSURLSessionDataTask实现
    iOS 直播类APP开发流程解析
    iOS实现电话状态监听 CoreTelephony
    iOS9全新的联系人相关框架——Contacts Framework
    iOS开发集成微信支付
    如何在 Git 里撤销(几乎)任何操作
    iOS开发网络缓存原理
  • 原文地址:https://www.cnblogs.com/lxwphp/p/15452665.html
Copyright © 2011-2022 走看看