Got permission denied while trying to connect to the Docker daemon socket at......dial unix /var/run

分析: 根据报错信息可知是权限问题。

原因一

:使用了非root用户启用或连接docker

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

sudo groupadd docker #添加docker用户组

sudo gpasswd -a $XXX docker #检测当前用户是否已经在docker用户组中,其中XXX为用户名。

sudo gpasswd -a $USER docker #将当前用户添加至docker用户组

newgrp docker #更新docker用户组

原因二

:启动命令未挂载docker.sock文件

>>> 单机模式页面有提示需要挂载本地 /var/run/docker.sock与容器内/var/run/docker.sock连接,因此,在启动时必须指定该挂载文件。

它是Docker守护进程(Docker daemon)默认监听的Unix域套接字(Unix domain socket),容器中的进程可以通过它与Docker守护进程进行通信。

docker run -d -p 9000:9000 --restart=always \
-v /var/run/docker.sock:/var/run/docker.sock \
--name prtainer-test portainer/portainer

# 用宿主机9000端口关联容器9000端口,并给容器起名为portainer-test。
# 执行完该命令之后,使用该机器IP:PORT即可访问Portainer。

原因三

:Docker版本过低

>>> 分别查看docker运行状态、版本、信息,发现运行状态均正常,但是版本却是1.13.1。

这是一个很老很老的版本,虽然搭建运行docker命令均无问题,但是与很多镜像存在兼容问题。

一般都是因为你使用默认安装(yum install docker),如果你细心点执行命令 yum list docker 你会发现只有一个1.13.1的包,这是因为你的系统版本不够高,随之的yum库软件版本也都比较低,需要进行一些设置再进行安装。
    1.查看docker版本
    在这里插入图片描述
     2.查看docker信息
     在这里插入图片描述 
      3. 查看docker状态
     在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值