【问题标题】:Cannot connect to the Docker daemon. Is 'docker -d' running on this host?无法连接到 Docker 守护程序。 'docker -d' 是否在此主机上运行?
【发布时间】:2014-10-13 19:17:33
【问题描述】:

我正在尝试运行我的 Docker 命令,但我遇到了标题中的通知错误。我试着跑了:

ps auxww | grep docker

但仍然出现错误。有什么解决办法吗?

【问题讨论】:

  • ps aux | grep docker 的输出是什么?你到底在尝试什么命令?
  • 我在尝试连接到另一个系统上运行的 Docker 时遇到了类似的错误link

标签: docker


【解决方案1】:

启动守护进程怎么样

sudo service docker start

应该可以解决问题。

或者

sudo docker -d

【讨论】:

  • 说开始:作业已经在运行:docker,但仍然从问题标题中得到错误
  • Jonathans-MacBook-Air:~ jonny$ docker -d flag provided but not defined: -d See 'docker --help'.
  • @LuísdeSousa "sudo service docker start" 在 16.04 为我工作,但我还必须将我的用户添加到 docker 组,正如 straville 提到的那样。
【解决方案2】:

如果您可以验证 docker 守护程序正在运行,则可能是您的用户不允许访问 docker。

为此,请将自己添加到 docker 组。

sudo usermod -aG docker <userid>

记得重新登录或以其他方式应用/激活新的组权限。

newgrp docker

【讨论】:

  • 这里是Ubuntu 16.04,我把自己加入了docker组。我不得不使用用户名而不是用户 ID。我打开了另一个终端,但仍然得到相同的结果。
  • 哦,加入群组后我需要sudo service docker restart
  • 加入组并重启,还是一样的结果
  • @ZeinMiftah 重新启动终端为我修复了它。还可以确定的是,您可以运行以下命令:sudo groupadd docker sudo gpasswd -a &lt;username&gt; docker 并通过查看 /etc/group 文件来验证更改。
  • @activedecay 取决于使用的客户操作系统参见:docs.docker.com/engine/admin |对于基于 Ubuntu/Debian 的发行版:基本服务控制方法列表、停止、启动 如:sudo initctl listsudo service --status-all |在 RH 发行版中,您将使用 systemctl 命令,例如:systemctl status docker.service -> 必要时尝试重新启动。 |使用:ps -ef | grep 码头工人 |如果这些消息来源说它正在“运行”,您可以更好地确信它正在运行。 |然而,可能的操作系统强化功能(AppArmor / SeLinux)可能会导致麻烦..禁用 ONLY 以进行测试。 : ]
【解决方案3】:

在我的例子中,我运行了多个 docker 实例,所以它不知道要附加到什么。杀死它们并重新启动后,我的问题就解决了。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-31
    • 1970-01-01
    • 1970-01-01
    • 2016-07-11
    • 2018-11-08
    • 1970-01-01
    相关资源
    最近更新 更多