docker容器Cannot connect to the Docker daemon. Is the docker daemon running on this host?解决方法。

第一次安装Docker,运行docker命令是可以的,如

docker ps

重启系统之后,运行docker ps后出现如下报错:

Cannot connect to the Docker daemon. Is the docker daemon running on this host?

查找资料后,知道了这是权限问题。需要root用户才能运行。

从0.5.2开始docker的守护进程总是以root用户来运行。docker守护进程绑定的是Unix的socket而不是一个TCP端口。Unix的socket默认属于root用户,所以,使用docker时必须加上sudo。

从0.5.3开始,创建一个名为docker组,然后将用户加入这个组内。当docker守护进程启动时,它会把Unix的读写权限赋予docker组。这样,当你作为docker组内用户使用docker客户端时,你就无须使用sudo了。

—-分割线—

以下为解决办法:

第一种:

依次运行以下命令,跳转至root用户去运行docker命令:

sudo su                       //切换到root

service docker start      //启动docker service

docker images              //显示所有images

docker ps //重新运行docker命令

第二种:

把当前用户加到docker用户组中:

#添加docker用户组

sudo groupadd docker

#把自己加到docker用户组中

sudo gpasswd -a myusername docker

#重启docker后台服务

sudo service docker restart

重启系统,直接运行docker命令就行了,不用加上sudo。

    原文作者:闪电恋
    原文地址: https://www.jianshu.com/p/3919f254e009
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞