启动 docker 服务时出错:找不到单元

启动 docker 服务时出错:找不到单元

我使用的是Redhat 7.4,这台机器没有互联网连接,我想安装Docker,因此我下载了一个rpm包,这个:

docker-ce-selinux-17.03.0.ce-1.el7.centos.noarch.rpm

我使用了该命令yum install,显然所有过程都很顺利,但是当我使用时我的问题开始了,sudo systemctl start docker我得到了这个:

无法启动 docker.service:找不到单元。

我尝试了本主题中的解决方案:CentOS7 无法启动 docker 守护进程 |堆栈溢出我的问题没有解决,我在文档 docker.socket 中写了这个

[Unit]
Description=Docker Socket for the API
PartOf=docker.service

[Socket]
ListenStream=/var/run/docker.sock
SocketMode=0660
SocketUser=root
SocketGroup=docker

[Install]
WantedBy=sockets.target

使用该命令时sudo systemctl start docker.socket会抛出以下错误:

docker.socket 作业失败。有关详细信息,请参阅“systemctl status docker.socket”和“journalctl -xe”。

然后我使用这个命令sudo systemctl status docker.socket并得到了这个

docker.socket - Docker Socket for the API
Loaded: loaded (/usr/lib/systemd/system/docker.socket; disabled; vendor 
preset: disabled)
Active: inactive (dead)
Listen: /var/run/docker.sock (Stream)

mar 02 10:19:28 machine.name systemd[1]: Socket service 
docker.service not loaded, refusing.
mar 02 10:19:28 machine.name systemd[1]: Failed to listen on Docker 
Socket for the API.

这是我使用时得到的journalctl -xe

No journal files were found.
-- No entries --

我完全陷入这个问题,我不知道还能做什么/尝试;我对 Linux 有点陌生,因此我可能会遗漏一些东西。

编辑1

我已经尝试过该命令rpm -qa | grep docker,这就是我得到的:

docker-ce-selinux-17.03.0.ce-1.el7.centos.noarch

答案1

如果您必须安装一个Centos软件包,RHEL那么您真正想要的软件包是:

docker-ce-17.12.1.ce-1.el7.centos.x86_64.rpm

您可以在其他地方下载它,然后将其带到您的计算机上。包的链接是 'https://download.docker.com/linux/centos/7/x86_64/stable/Packages/docker-ce-17.12.1.ce-1.el7.centos.x86_64.rpm`

您还需要该包:container-selinux-2.36-1.gitff95335.el7.noarch.rpm因为它是一个依赖项。可以从http://mirror.centos.org/centos/7/extras/x86_64/Packages/

在开始之前,或者yum remove docker-ce-selinux-17.03.0.ce-1.el7.centos.noarch.rpm因为rpm -e docker-ce-selinux-17.03.0.ce-1.el7.centos.noarch.rpm它们可能与container-selinux-2.36-1.gitff95335.el7.noarch.rpm

当我提到的软件包位于您的计算机上后,您可以通过以下两种方式之一安装它们:

yum install container-selinux-2.36-1.gitff95335.el7.noarch.rpm docker-ce-17.12.1.ce-1.el7.centos.x86_64.rpm

rpm -ivh container-selinux-2.36-1.gitff95335.el7.noarch.rpm docker-ce-17.12.1.ce-1.el7.centos.x86_64.rpm

安装后,

systemctl list-unit-files | grep docker这将显示docker.service

systemctl enable docker

systemctl start docker

systemctl status docker

您将看到 docker 服务已启动并正在运行。

相关内容