Linux docker:无法连接到位于的docker守护程序unix:///var/run/docker.sock. docker守护进程正在运行吗?对于Ubuntu 16.04

Linux docker:无法连接到位于的docker守护程序unix:///var/run/docker.sock. docker守护进程正在运行吗?对于Ubuntu 16.04,linux,docker,ubuntu-16.04,daemon,nvidia-docker,Linux,Docker,Ubuntu 16.04,Daemon,Nvidia Docker,在运行任何docker命令时获取上述错误。 当我运行以下命令时 $sudo docker info 输出 docker命令都不起作用。它们都会抛出相同的错误。 $sudo systemctl status docker 输出。 当我运行以下命令时… $sudo服务docker重启 输出 docker.service的作业失败,因为控制进程已退出,并显示错误代码。有关详细信息,请参见“systemctl status docker.service”和“journalctl-xe”。 我已经

在运行任何docker命令时获取上述错误。 当我运行以下命令时
$sudo docker info

输出



docker命令都不起作用。它们都会抛出相同的错误。
$sudo systemctl status docker

输出。


当我运行以下命令时…
$sudo服务docker重启

输出
docker.service的作业失败,因为控制进程已退出,并显示错误代码。有关详细信息,请参见“systemctl status docker.service”和“journalctl-xe”。

我已经运行了“systemctl status docker.service”,还运行了“journalctl-xe”命令来了解问题所在。journalctl输出包含

Jul 03 13:23:06 cse-bennettuniv systemd[1]: Starting Docker Application Container Engine...
Jul 03 13:23:06 cse-bennettuniv dockerd[9390]: ERROR: The '--disable-legacy-registry' flag has been removed. Interacting with legacy (v1) registries is no longer supported
Jul 03 13:23:06 cse-bennettuniv systemd[1]: docker.service: Main process exited, code=exited, status=1/FAILURE
Jul 03 13:23:06 cse-bennettuniv systemd[1]: Failed to start Docker Application Container Engine.
Jul 03 13:23:06 cse-bennettuniv systemd[1]: docker.service: Unit entered failed state.
Jul 03 13:23:06 cse-bennettuniv systemd[1]: docker.service: Failed with result 'exit-code'.
Jul 03 13:23:06 cse-bennettuniv systemd[1]: docker.service: Service hold-off time over, scheduling restart.
Jul 03 13:23:06 cse-bennettuniv systemd[1]: Stopped Docker Application Container Engine.



感谢@DavidMaze和@Exa对该问题的改进。
我在谷歌上搜索了这个特定错误
错误:“--disable legacy registry”标志已被删除。不再支持与旧版(v1)注册表交互
。然后我从文件中删除并保存了它。之后,它工作正常,但nvidia docker出现了新的错误。因此,我的上司建议我重新安装docker和nvidia docker。
我随后重新安装了东西。一切都安装好了,没有任何错误。但是当我试图启动nvidia docker时,它开始抛出这个特殊错误:
启动nvidia-docker.service失败:未找到单位nvidia-docker.service。


以下是详细信息

sudo systemctl状态docker

● docker.service - Docker Application Container Engine
   Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
  Drop-In: /etc/systemd/system/docker.service.d
           └─docker-override.conf
   Active: active (running) since Thu 2018-07-05 14:49:50 EDT; 23s ago
     Docs: https://docs.docker.com
 Main PID: 60189 (dockerd)
    Tasks: 51
   Memory: 239.4M
      CPU: 723ms
   CGroup: /system.slice/docker.service
           ├─60189 /usr/bin/dockerd -H fd:// -s overlay2
           └─60200 docker-containerd --config /var/run/docker/containerd/containerd.toml

Jul 05 14:49:50 cse-bennettuniv dockerd[60189]: time="2018-07-05T14:49:50.795448032-04:00" level=warning msg="Your kernel does not support swap memory limit"
Jul 05 14:49:50 cse-bennettuniv dockerd[60189]: time="2018-07-05T14:49:50.795489588-04:00" level=warning msg="Your kernel does not support cgroup rt period"
Jul 05 14:49:50 cse-bennettuniv dockerd[60189]: time="2018-07-05T14:49:50.795499101-04:00" level=warning msg="Your kernel does not support cgroup rt runtime"
Jul 05 14:49:50 cse-bennettuniv dockerd[60189]: time="2018-07-05T14:49:50.796089811-04:00" level=info msg="Loading containers: start."
Jul 05 14:49:50 cse-bennettuniv dockerd[60189]: time="2018-07-05T14:49:50.886351523-04:00" level=info msg="Default bridge (docker0) is assigned with an IP address 172.17.0.0/16. Daemon opti
Jul 05 14:49:50 cse-bennettuniv dockerd[60189]: time="2018-07-05T14:49:50.913124323-04:00" level=info msg="Loading containers: done."
Jul 05 14:49:50 cse-bennettuniv dockerd[60189]: time="2018-07-05T14:49:50.932021936-04:00" level=info msg="Docker daemon" commit=9ee9f40 graphdriver(s)=overlay2 version=18.03.1-ce
Jul 05 14:49:50 cse-bennettuniv dockerd[60189]: time="2018-07-05T14:49:50.932079832-04:00" level=info msg="Daemon has completed initialization"
Jul 05 14:49:50 cse-bennettuniv dockerd[60189]: time="2018-07-05T14:49:50.938512369-04:00" level=info msg="API listen on /var/run/docker.sock"
Jul 05 14:49:50 cse-bennettuniv systemd[1]: Started Docker Application Container Engine.

sudo systemctl状态nvidia docker

这里给出了没有这样的文件或目录的原因。

sudo服务nvidia docker启动

启动nvidia-docker.service失败:未找到单元nvidia-docker.service。

我这样做是为了解决问题。但是当我在
/lib/systemd/system


dgxuser@cse-贝内特大学:/lib/systemd/system$ls|grep nvidia

nvidia persistenced.service


这意味着没有名为nvidia docker.service的文件。现在我不明白,即使正确安装了它,为什么我不能启动nvidia docker?

看看/var/log以了解docker的日志如何?请从
journalctl
输出中发布有用的摘录。链接文件中包含X服务器日志,没有关于Docker问题的建议。感谢您回复我的问题。这就是我应该上传@DavidMaze的内容吗?是的,那个文件有一个非常强烈的提示,说明什么是错的。你尝试过什么来解决这个问题?@DavidMaze我尝试过在类似问题上给出的方法,但没有那么大的帮助。请你告诉我一些我应该试试的东西。
● nvidia-docker.service - NVIDIA Docker plugin
   Loaded: loaded (/lib/systemd/system/nvidia-docker.service; enabled; vendor preset: enabled)
   Active: active (running) since Mon 2018-07-02 08:54:55 EDT; 37min ago
     Docs: https://github.com/NVIDIA/nvidia-docker/wiki
 Main PID: 3173 (nvidia-docker-p)
    Tasks: 10
   Memory: 61.8M
      CPU: 3.739s
   CGroup: /system.slice/nvidia-docker.service
           └─3173 /usr/bin/nvidia-docker-plugin -s /var/lib/nvidia-docker

Jul 02 08:54:55 cse-bennettuniv systemd[1]: Starting NVIDIA Docker plugin...
Jul 02 08:54:55 cse-bennettuniv systemd[1]: Started NVIDIA Docker plugin.
Jul 02 08:54:55 cse-bennettuniv nvidia-docker-plugin[3173]: /usr/bin/nvidia-docker-plugin | 2018/07/02 08:54:55 Loading NVIDIA unified memory
Jul 02 08:54:55 cse-bennettuniv nvidia-docker-plugin[3173]: /usr/bin/nvidia-docker-plugin | 2018/07/02 08:54:55 Loading NVIDIA management library
Jul 02 08:54:55 cse-bennettuniv nvidia-docker-plugin[3173]: /usr/bin/nvidia-docker-plugin | 2018/07/02 08:54:55 Discovering GPU devices
Jul 02 08:54:59 cse-bennettuniv nvidia-docker-plugin[3173]: /usr/bin/nvidia-docker-plugin | 2018/07/02 08:54:59 Provisioning volumes at /var/lib/nvidia-docker/volumes
Jul 02 08:54:59 cse-bennettuniv nvidia-docker-plugin[3173]: /usr/bin/nvidia-docker-plugin | 2018/07/02 08:54:59 Serving plugin API at /var/lib/nvidia-docker
Jul 02 08:54:59 cse-bennettuniv nvidia-docker-plugin[3173]: /usr/bin/nvidia-docker-plugin | 2018/07/02 08:54:59 Serving remote API at localhost:3476
Jul 03 13:23:06 cse-bennettuniv systemd[1]: Starting Docker Application Container Engine...
Jul 03 13:23:06 cse-bennettuniv dockerd[9390]: ERROR: The '--disable-legacy-registry' flag has been removed. Interacting with legacy (v1) registries is no longer supported
Jul 03 13:23:06 cse-bennettuniv systemd[1]: docker.service: Main process exited, code=exited, status=1/FAILURE
Jul 03 13:23:06 cse-bennettuniv systemd[1]: Failed to start Docker Application Container Engine.
Jul 03 13:23:06 cse-bennettuniv systemd[1]: docker.service: Unit entered failed state.
Jul 03 13:23:06 cse-bennettuniv systemd[1]: docker.service: Failed with result 'exit-code'.
Jul 03 13:23:06 cse-bennettuniv systemd[1]: docker.service: Service hold-off time over, scheduling restart.
Jul 03 13:23:06 cse-bennettuniv systemd[1]: Stopped Docker Application Container Engine.
● docker.service - Docker Application Container Engine
   Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
  Drop-In: /etc/systemd/system/docker.service.d
           └─docker-override.conf
   Active: active (running) since Thu 2018-07-05 14:49:50 EDT; 23s ago
     Docs: https://docs.docker.com
 Main PID: 60189 (dockerd)
    Tasks: 51
   Memory: 239.4M
      CPU: 723ms
   CGroup: /system.slice/docker.service
           ├─60189 /usr/bin/dockerd -H fd:// -s overlay2
           └─60200 docker-containerd --config /var/run/docker/containerd/containerd.toml

Jul 05 14:49:50 cse-bennettuniv dockerd[60189]: time="2018-07-05T14:49:50.795448032-04:00" level=warning msg="Your kernel does not support swap memory limit"
Jul 05 14:49:50 cse-bennettuniv dockerd[60189]: time="2018-07-05T14:49:50.795489588-04:00" level=warning msg="Your kernel does not support cgroup rt period"
Jul 05 14:49:50 cse-bennettuniv dockerd[60189]: time="2018-07-05T14:49:50.795499101-04:00" level=warning msg="Your kernel does not support cgroup rt runtime"
Jul 05 14:49:50 cse-bennettuniv dockerd[60189]: time="2018-07-05T14:49:50.796089811-04:00" level=info msg="Loading containers: start."
Jul 05 14:49:50 cse-bennettuniv dockerd[60189]: time="2018-07-05T14:49:50.886351523-04:00" level=info msg="Default bridge (docker0) is assigned with an IP address 172.17.0.0/16. Daemon opti
Jul 05 14:49:50 cse-bennettuniv dockerd[60189]: time="2018-07-05T14:49:50.913124323-04:00" level=info msg="Loading containers: done."
Jul 05 14:49:50 cse-bennettuniv dockerd[60189]: time="2018-07-05T14:49:50.932021936-04:00" level=info msg="Docker daemon" commit=9ee9f40 graphdriver(s)=overlay2 version=18.03.1-ce
Jul 05 14:49:50 cse-bennettuniv dockerd[60189]: time="2018-07-05T14:49:50.932079832-04:00" level=info msg="Daemon has completed initialization"
Jul 05 14:49:50 cse-bennettuniv dockerd[60189]: time="2018-07-05T14:49:50.938512369-04:00" level=info msg="API listen on /var/run/docker.sock"
Jul 05 14:49:50 cse-bennettuniv systemd[1]: Started Docker Application Container Engine.
● nvidia-docker.service
   Loaded: not-found (Reason: No such file or directory)
   Active: inactive (dead)

Jul 05 14:40:51 cse-bennettuniv systemd[1]: Stopped NVIDIA Docker plugin.
Jul 05 14:40:51 cse-bennettuniv systemd[1]: Stopped NVIDIA Docker plugin.
Jul 05 14:44:07 cse-bennettuniv systemd[1]: Stopped NVIDIA Docker plugin.
Jul 05 14:44:07 cse-bennettuniv systemd[1]: Stopped NVIDIA Docker plugin.