我得到一个错误消息,说我不能连接到docker守护进程。我看了其他人的答案,他们也有类似的问题,但没有帮助。我运行的是Ubuntu 15.10版本。我会尽力提供我所掌握的所有信息。

root@# docker-compose -f docker-compose-deps.yml up -d
ERROR: Couldn't connect to Docker daemon at http+docker://localunixsocket - is it running?

If it's at a non-standard location, specify the URL with the DOCKER_HOST environment variable.

码头工人版本

root@# sudo docker     version
Client:
Version:      1.9.1
API version:  1.21
Go version:   go1.4.2
Git commit:   a34a1d5
Built:        Fri Nov 20 13:20:08 UTC 2015
OS/Arch:      linux/amd64
Cannot connect to the Docker daemon. Is the docker daemon running on this host?

Docker-Compose版本

root@# docker-compose --version
docker-compose version 1.5.2, build 7240ff3

这是我试图停止或启动服务时发生的情况…

root@# sudo service docker stop
stop: Unknown instance: 
root@# sudo service   docker start
docker start/running, process 5375

如果我运行ps aux | grep docker

root@# ps aux | grep docker
root      4233  0.0  0.0  13692  2204 pts/15   S+   10:27   0:00 grep --color=auto docker

任何帮助都将不胜感激。如果你还需要其他信息,请告诉我。


当前回答

在我的情况下,问题是不适当的图像标签名称-后端-以短的前导破折号开始:

失败:

version: '2.4'

services:
  my-service:
    container_name: my.backend
    image: imagename:-backend
    build:
      context: .
    

错误信息:

ERROR: Couldn't connect to Docker daemon - you might need to run `docker-machine start default`.

工作:与我的后台

version: '2.4'

services:
  my-service:
    container_name: my.backend
    image: imagename:my-backend
    build:
      context: .
    

其他回答

解决这个问题的一种方法是首先运行以下命令将您的用户添加到docker组

sudo usermod -aG docker $USER

重要提示:请记住退出您的系统(不仅仅是您的终端),然后重新登录才能生效!

我发现了这个,它似乎解决了我的问题。

GitHub修复Docker守护进程崩溃

我修改了docker-compose-deps的内容。Yml文件,见链接。然后我运行docker-compose -f docker-compose-deps。Yml up -d。然后我把它改回来,不知为什么它还能用。我不需要继续我提供的链接中的步骤,但前两个步骤为我解决了这个问题。

我认为这是由于访问权,你只需要写

sudo docker-compose-deps.yml up

经过15分钟的调试后,我也犯了同样的错误。事实证明,它只需要一个sudo:)

以非root用户签出Manage Docker以去掉sudo前缀。

你应该像这样把你的用户添加到docker组:

sudo usermod -aG docker ${USER}