我是 docker 和 linux 的新手,我尝试在我的新 Ubuntu 20.04 LTS 上安装 docker。
我遵循了以下说明:https://www.digitalocean.com/community/tutorials/how-to-install-and-use-docker-on-ubuntu-20-04
当我到达这个命令时:sudo apt install docker-ce
,我收到此错误:
Reading package lists... Done
Building dependency tree
Reading state information... Done
docker-ce is already the newest version (5:19.03.9~3-0~ubuntu-focal).
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
1 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.
Do you want to continue? [Y/n] y
Setting up docker-ce (5:19.03.9~3-0~ubuntu-focal) ...
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 Sat 2020-05-23 22:00:38 CES
T; 8ms ago
TriggeredBy: ● docker.socket
Docs: https://docs.docker.com
Process: 15674 ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containe
rd.sock (code=exited, status=1/FAILURE)
Main PID: 15674 (code=exited, status=1/FAILURE)
dpkg: error processing package docker-ce (--configure):
installed docker-ce package post-installation script subprocess returned error exit status
1
Errors were encountered while processing:
docker-ce
E: Sub-process /usr/bin/dpkg returned an error code (1)
有人能帮我解决这个问题吗?
出于学习目的,我想知道出了什么问题以及原因。但只要它再次起作用,就不是强制性的。
非常感谢。
答案1
我遇到了一些类似的错误,这是由于我的 VPN 干扰了 docker 创建网络接口。关闭我的 VPN 后,问题就解决了。
答案2
我以前也遇到过类似的问题。
您可以执行以下命令并查看它报告什么错误。
/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
就我的情况而言,新更新并不喜欢我的/etc/docker/daemon.json
配置,并且存在一些问题。删除文件后即可正常运行。
答案3
两周后我再次尝试,现在它运行完美。
我真的不知道为什么(我想这样做),但我在 Ubuntu 发布仅一个月后就从 18.04 迁移到了 20.04。
也许对于 Docker 安装包来说,为 Focal 发行版做好准备还为时过早。
sudo apt update
现在它们已经解决了,在我做了(我经常这样做)之后可能就解决了。
但再次重申,这就是我的想法。我不知道这是否是正确的答案。不过我会将这篇文章标记为已解决,但如果你知道真正发生了什么,请随时分享你的答案。