我已经应用了互联网上所有可用的解决方案,但我仍然不能运行Docker。

我想在我的服务器上使用Scrapy Splash。

下面是我运行的命令的历史。

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

但它给出了错误:

unix:///var/run/ Docker .sock无法连接到Docker守护进程。docker守护进程正在运行吗?


当前回答

对我来说,解决方案就是确保我安装了正确的Docker包。例如,对于Ubuntu,贬值包是:

码头工人 docker-engine docker.io containerd runc

安装检查https://docs.docker.com。在撰写本文时,提供了Ubuntu、CentOS、Debian和Fedora的使用说明。

其他回答

在root模式下,执行systemctl start docker命令

然后,可以运行systemctl status docker命令查看状态

这个异常发生在docker服务没有运行或者登录用户没有权限访问docker的情况下,通常在RedHat中出现

使用下面的命令可以解决这个问题

Sudo服务docker启动

我在Linux上使用yum (yum install docker)安装docker时也遇到了同样的问题。

解决方法:从官方网站下载docker二进制文件:docker安装、解包和安装步骤。

只是增加了知识储备。我觉得这个视频很有用。我没有定义DOCKER_HOST。我有一个/etc/wsl.conf,它有:

[automount]
root = /
options = "metadata"

重启几次后,docker hello-world工作了。

如果您正在尝试在windows下安装带有wsl 2 linux子系统的docker,请阅读本文档并检查是否执行了此命令:

wsl.exe --set-version (distro name) 2

并检查您的Windows操作系统docker->设置->资源->启用与其他发行版的集成:被检查并重新启动。