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

贾烨
2023-12-01

linux版本:Ubuntu16.04

第一次安装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。

 类似资料: