无法连接到 unix:/var/run/docker.sock 上的 Docker 守护程序。 docker 守护进程是不是正在运行?
Posted
技术标签:
【中文标题】无法连接到 unix:/var/run/docker.sock 上的 Docker 守护程序。 docker 守护进程是不是正在运行?【英文标题】:Cannot connect to the Docker daemon at unix:/var/run/docker.sock. Is the docker daemon running?无法连接到 unix:/var/run/docker.sock 上的 Docker 守护程序。 docker 守护进程是否正在运行? 【发布时间】:2017-11-24 12:18:25 【问题描述】:我已经应用了互联网上所有可用的解决方案,但我仍然无法运行 Docker。
我想在我的服务器上使用 Scrapy Splash。
这是我运行的命令中的history
。
docker run -p 8050:8050 scrapinghub/splash
sudo docker run -p 8050:8050 scrapinghub/splash
sudo usermod -aG docker $(whoami)
sudo docker run -p 8050:8050 scrapinghub/splash
newgrp docker
sudo docker run -p 8050:8050 scrapinghub/splash
reboot
sudo docker run -p 8050:8050 scrapinghub/splash
docker run -p 8050:8050 scrapinghub/splash
您可以看到我也尝试重新启动服务器,但没有帮助。
查看ps -aux | grep docker
的输出
root@mani:/var/www/html# ps aux | grep docker
root 8524 0.0 0.8 127904 13964 ? Ssl 17:21 0:00 /usr/bin/dockerd --raw-logs
root 8534 0.0 0.3 90588 5012 ? Ssl 17:21 0:00 docker-containerd -l unix:///var/run/docker/libcontainerd/docker-containerd.sock --metrics-interval=0 --start-timeout 2m --state-dir /var/run/docker/libcontainerd/containerd --shim docker-containerd-shim --runtime docker-runc
root 8543 0.0 0.0 8812 764 pts/1 S+ 17:21 0:00 grep --color=auto docker
root 16356 0.0 0.0 17200 964 pts/1 S 17:14 0:00 newgrp docker
root 20080 0.0 0.0 17200 964 pts/1 S 17:06 0:00 newgrp docker
root 30221 0.0 0.0 17200 964 pts/1 S 17:09 0:00 newgrp docker
【问题讨论】:
如果你运行 ps aux | grep docker,你看到守护进程在运行吗? 可能重复:***.com/questions/21871479/… @Rome_Leader 查看我的问题中的输出... 试试这个:sudo service docker restart 您可以使用以下命令查看您的 docker 守护进程的状态:sudo service docker status
检查它是否处于活动状态
【参考方案1】:
这可能与硬盘驱动器上没有剩余磁盘空间有关。确保您的设备上还有空间,如果没有剩余空间,Docker 将无法启动。
【讨论】:
【参考方案2】:这对您来说可能有点晚了,但希望它能帮助人们在码头丛林中找到自己的路。 问题可能来自 tcp 端口绑定问题 验证此文件是否存在
/etc/systemd/system/docker.service.d
这是默认的 UNIX 套接字侦听覆盖文件。该文件可能实际上是空的,但我发现它存在的事实有时会导致一些头痛,就像你所面临的那样。 如果它存在 1. 那么 2. 如果不直接去 2.
1. $ sudo rm -rf /etc/systemd/system/docker.service.d
2. $ sudo systemctl deamon-reload
我发现这里的一些建议忽略了实际守护程序无法加载的错误
和docker一起玩的好朋友是
$ systemctl status docker.service
【讨论】:
【参考方案3】:对于像我这样刚安装并尝试在 RaspberryPi (RPi) 上运行 docker 的人,我需要重新启动我的 RPi 4B+ 来解决此问题并实际运行 docker 守护进程。
在撰写本文时,this great manual 确实提到了重启 RPi 的必要性,但仅在将“非 root 用户设置为 Docker 组”之后。
HTH,如果有人像我一样想念这个..
【讨论】:
【参考方案4】:这对我有用,如果您使用的是 Ubuntu 16 或 18(14 也可能有用),它可能只对您有用。轻松一试:
转到 Ubuntu 软件,输入 Docker。 如果 docker (108 mb) 预装在那里,请卸载它。 安装泊坞窗 现在运行命令,看看是否出现同样的错误
错误:
完成上述步骤后。
如您所见,它奏效了:)
【讨论】:
【参考方案5】:对我来说,解决方案是确保我安装了正确的 Docker 包。例如,对于 Ubuntu,depreciated packages 是:
码头工人 码头引擎 docker.io 容器 运行安装检查https://docs.docker.com。在撰写本文时,已为 Ubuntu、CentOS、Debian 和 Fedora 提供了说明。
【讨论】:
您错过了一些步骤:点击此链接签署回购协议。 medium.com/@sebagomez/… @Robert,上面我也参考了官方的docs.docker来获取PGP密钥。这比用户从该站点或媒体复制它更安全。 我尝试了 ubuntu 步骤,但这些步骤不起作用。需要签名过程和我提供的链接。 @Robert,谢谢我已经删除了我不完整的说明,而只是参考官方文档。【参考方案6】:适用于在安装时遇到 Docker 问题的每个人。
指向 docker 服务失败的错误,请执行以下命令。
$ sudo apt update
$ sudo apt install apt-transport-https ca-certificates curl gnupg2 software-properties-common
$ curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -
$ sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/debian $(lsb_release -cs) stable"
$ sudo apt update
$ apt-cache policy docker-ce
$ sudo apt install docker-ce
【讨论】:
【参考方案7】:我遇到了同样的问题。就我而言,*** 是罪魁祸首。关闭 *** 有助于成功安装。
【讨论】:
【参考方案8】:我没有看到提到的这个解决方案,所以我会发布它以防它可能对某人有所帮助。我在我的 MacOS 机器上遇到了这个错误。原因是我在我的点文件中设置了DOCKER_HOST
环境变量。通过unset DOCKER_HOST
取消设置就可以了。我在官方 docker for Mac 文档中找到了提示:https://docs.docker.com/desktop/mac/troubleshoot/#workarounds-for-common-problems。
【讨论】:
【参考方案9】:只是添加到知识库中。我发现这个video 很有帮助。我没有定义DOCKER_HOST
。我确实有一个/etc/wsl.conf
,它有:
[automount]
root = /
options = "metadata"
重启几次后 docker hello-world 工作了。
【讨论】:
【参考方案10】:为 linux 运行
sudo dockerd
但是,如果您使用 Docker Client for mac,它将无法正常工作。试试下面的代码
$socat TCP-LISTEN:2376,reuseaddr,fork UNIX-CLIENT:/var/run/docker.sock
https://forums.docker.com/t/using-pycharm-docker-plugin-with-docker-beta/8617/9
该解决方法将端口 2376 向全世界开放...由于未启用 TLS,这是一个坏主意,因为同一网络上的任何人都可以劫持您的 docker 守护进程
【讨论】:
解决方案很棒 请点赞:)【参考方案11】:请在 youtube 上参考此视频,我从过去 2 天开始一直在苦苦挣扎,没有任何帮助,但是,这个视频救了我的命!
【讨论】:
【参考方案12】:这个问题可以通过运行永久解决 1.systemctl启用docker 2.服务docker启动
【讨论】:
好像每次重启电脑都需要通过service start docker
启动docker服务。
@PranKumarSarkar 如果你运行“sudo systemctl enable docker”则不会【参考方案13】:
使用
docker start <your_container_name>
然后通过使用连接到数据库
mssql -u <yourUsername> -p <yourPassword>
如果您在第一步中遇到错误,则 docker 正在运行并继续执行第二步。
注意:我使用 Mac 作为我的主要操作系统,这可能与基于 Unix 的操作系统的答案相同。如果不!提前抱歉。
【讨论】:
【参考方案14】:只是重新启动系统对我有用。这可能是一个临时问题
【讨论】:
我发现我实际上是在 docker 镜像内的一个 shell 中!只需打开另一个终端并输入docker ps
即可查看正在运行的图像。
这对我很有用 ?? 我更新了 Docker 并且更改了一些条款和条件 在登录时,Docker 重新启动并使用我的密码请求我的权限并接受新的条款和条件以上是关于无法连接到 unix:/var/run/docker.sock 上的 Docker 守护程序。 docker 守护进程是不是正在运行?的主要内容,如果未能解决你的问题,请参考以下文章
无法使用php连接错误连接到mysql:无法连接到'localhost'(10061)上的MySQL服务器[重复]
MySQL Workbench 无法连接到我的 RDS 数据库:无法连接到 localhost
Django docker 容器无法连接到 mysql 容器,出现错误“无法连接到 'db' (111) 上的 MySQL 服务器”)