docker.service lacks both ExecStart= and ExecStop= setting. Refusing.
时间: 2023-07-15 16:12:20 浏览: 95
这个错误通常是因为 `docker.service` 文件缺少必要的 `ExecStart` 或 `ExecStop` 配置。您可以尝试按照以下步骤进行修复:
1. 打开终端并使用管理员权限运行以下命令,以编辑 `docker.service` 文件:
```
sudo nano /lib/systemd/system/docker.service
```
2. 确认 `docker.service` 文件中存在 `ExecStart` 和 `ExecStop` 配置。如果缺少,请将以下内容添加到文件中:
```
ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
ExecStop=/bin/systemctl stop docker.service
```
3. 保存并关闭文件。
4. 运行以下命令以重新加载 `systemd` 并启动 `docker.service`:
```
sudo systemctl daemon-reload
sudo systemctl restart docker.service
```
如果仍然有问题,请检查文件路径和命令是否正确,并确保您的 Docker 安装已正确配置。
相关问题
Failed to restart docker.service: Unit docker.service not found
Failed to restart docker.service: Unit docker.service not found是因为系统找不到docker.service单元。这可能是由于以下原因之一造成的:操作系统版本不兼容、Docker安装不完全或者docker.service被禁用。解决方法如下:
1. 确保操作系统版本兼容性。Docker对于不同的操作系统有不同的最低要求版本,确保你的操作系统版本符合要求。
2. 检查Docker是否正确安装。重新安装Docker,并确保安装过程中没有出现错误。可以使用sudo yum remove docker命令卸载Docker,然后重新安装。
3. 启用docker.service。使用sudo systemctl enable docker命令,确保docker.service被启用。
4. 启动docker.service。使用sudo systemctl start docker命令来启动docker.service。
failed to start docker.service :unit docker.service not found
根据引用的内容,当在CentOS中启动Docker时,可能会出现"Failed to start docker.service: Unit docker.service not found"的错误。这是由于CentOS默认使用podman替代了Docker,所以需要卸载podman来解决这个问题。你可以按照以下步骤进行操作:
1. 首先,使用以下命令卸载podman:
```
sudo yum remove -y podman
```
2. 安装Docker CE,可以使用以下命令进行安装:
```
sudo yum install -y docker-ce docker-ce-cli containerd.io
```
3. 安装完成后,启动Docker服务:
```
sudo systemctl start docker
```
这样就应该解决了"Failed to start docker.service: Unit docker.service not found"的问题。希望这能帮到你。如果还有其他问题,请随时提问。