我正在尝试在 Strato.de 租用的虚拟服务器上安装 docker-ce。但安装过程结束时失败。我创建了一个安装脚本,在本地或在本地运行的虚拟机中执行时,该脚本可以完美运行。
安装脚本:
#!/bin/bash
sudo apt-get update
sudo apt-get install -y \
apt-transport-https \
ca-certificates \
curl \
software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository -y \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable"
sudo apt-get update
sudo apt-get install -y docker-ce
Strato.de(Ubuntu 16.04)虚拟服务器上的错误:
docker-ce (17.12.0~ce-0~ubuntu) wird eingerichtet ...
Job for docker.service failed because the control process exited with error code. See "systemctl status docker.service" and "journalctl -xe" for details.
invoke-rc.d: initscript docker, action "start" failed.
● docker.service - Docker Application Container Engine
Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
Active: activating (auto-restart) (Result: exit-code) since Mi 2018-01-03 05:58:08 CET; 15ms ago
Docs: https://docs.docker.com
Process: 30871 ExecStart=/usr/bin/dockerd -H fd:// (code=exited, status=1/FAILURE)
Main PID: 30871 (code=exited, status=1/FAILURE)
Memory: 38.1M
CGroup: /system.slice/docker.service
dpkg: Fehler beim Bearbeiten des Paketes docker-ce (--configure):
Unterprozess installiertes post-installation-Skript gab den Fehlerwert 1 zurück
liberror-perl (0.17-1.2) wird eingerichtet ...
git-man (1:2.7.4-0ubuntu1.3) wird eingerichtet ...
git (1:2.7.4-0ubuntu1.3) wird eingerichtet ...
patch (2.7.5-1) wird eingerichtet ...
Trigger für libc-bin (2.23-0ubuntu9) werden verarbeitet ...
Trigger für systemd (229-4ubuntu21) werden verarbeitet ...
Fehler traten auf beim Bearbeiten von:
docker-ce
E: Sub-process /usr/bin/dpkg returned an error code (1)
有谁有同样的经历吗?有解决办法吗?
答案1
与此同时,我发现了问题所在。事实证明,Docker 不喜欢 Virtuozzo 之类的虚拟化技术,而 Strato.de 的虚拟服务器大量使用了 Virtuozzo。除了更换为不使用 Virtuozzo 进行虚拟化的提供商之外,似乎没有其他解决方法。
答案2
我认为是的。手动运行启动命令时,出现错误,提示存在多个有效的图形选项,请选择 1。通过将 -s overlay2 添加到启动脚本 OPTS(/etc/init/docker.conf),它再次启动。
例如:脚本# 在 /etc/default/$UPSTART_JOB (/etc/default/docker) 中修改这些 DOCKERD=/usr/bin/dockerd DOCKER_OPTS=-s overlays2
希望这对 Pete 有帮助