我正在尝试在 Manjaro 中使用 docker(我的内核版本是 4.19)但它不起作用。
运行后,sudo pamac install docker我运行sudo systemctl start docker.service并收到此消息:
Job for docker.service failed because the control process exited with error code.
See "systemctl status docker.service" and "journalctl -xe" for details.
Run Code Online (Sandbox Code Playgroud)
所以sudo systemctl status docker.service返回:
? docker.service - Docker Application Container Engine
Loaded: loaded (/usr/lib/systemd/system/docker.service; disabled; vendor preset: disabled)
Active: failed (Result: exit-code) since Mon 2019-04-29 12:28:44 -03; 39s ago
Docs: https://docs.docker.com
Process: 17769 ExecStart=/usr/bin/dockerd -H fd:// (code=exited, status=1/FAILURE)
Main PID: 17769 (code=exited, status=1/FAILURE)
abr 29 12:28:44 tamer-pc systemd[1]: docker.service: Service RestartSec=100ms expired, scheduling restart.
abr 29 12:28:44 tamer-pc systemd[1]: docker.service: Scheduled restart job, restart counter is at 3.
abr 29 12:28:44 tamer-pc systemd[1]: Stopped Docker Application Container Engine.
abr 29 12:28:44 tamer-pc systemd[1]: docker.service: Start request repeated too quickly.
abr 29 12:28:44 tamer-pc systemd[1]: docker.service: Failed with result 'exit-code'.
abr 29 12:28:44 tamer-pc systemd[1]: Failed to start Docker Application Container Engine.
Run Code Online (Sandbox Code Playgroud)
并journalctl -xe返回:
-- Defined-By: systemd
-- Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- The unit docker.service has entered the 'failed' state with result 'exit-code'.
abr 29 12:28:44 tamer-pc systemd[1]: Failed to start Docker Application Container Engine.
-- Subject: A unidade docker.service falhou
-- Defined-By: systemd
-- Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- A unidade docker.service falhou.
--
-- O resultado é failed.
abr 29 12:28:44 tamer-pc systemd[1]: docker.socket: Failed with result 'service-start-limit-hit'.
-- Subject: Unit failed
-- Defined-By: systemd
-- Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- The unit docker.socket has entered the 'failed' state with result 'service-start-limit-hit'.
abr 29 12:29:02 tamer-pc dbus-daemon[650]: [system] Activating via systemd: service name='org.freedesktop.resolve1' unit='>
abr 29 12:29:02 tamer-pc dbus-daemon[650]: [system] Activation via systemd failed for unit 'dbus-org.freedesktop.resolve1.>
abr 29 12:29:24 tamer-pc sudo[17879]: tamer : TTY=pts/0 ; PWD=/etc/docker ; USER=root ; COMMAND=/usr/bin/systemctl stat>
abr 29 12:29:24 tamer-pc sudo[17879]: pam_unix(sudo:session): session opened for user root by (uid=0)
abr 29 12:29:24 tamer-pc sudo[17879]: pam_unix(sudo:session): session closed for user root
lines 1703-1725/1725 (END)
Run Code Online (Sandbox Code Playgroud)
我正在寻找两天的解决方案,但无论我读到什么,似乎都与我的问题不完全一样。
Tâm*_*iro 40
我真的不知道发生了什么,但我sudo dockerd --debug像 Zeitounator 一样运行,重新启动我的电脑,docker 完美运行。
小智 12
我遇到了同样的问题,但我遵循了@Zeitounator 的建议,我运行此命令sudo dockerd --debug来查看问题。它显示此消息:
您的 Linux 内核版本 2.6.32-042stab138.1 不支持运行 docker。请将您的内核升级到 3.10.0 或更新版本。
我已经更新了我的内核,它运行良好。希望对你有帮助!
我在本地机器上设置Kubernetes时遇到了类似的问题:
当我尝试设置Docker以使用 OverlayFS 存储驱动程序时出现错误。
我运行了以下命令:
sudo systemctl stop docker
cp -au /var/lib/docker /var/lib/docker.bk
Run Code Online (Sandbox Code Playgroud)
然后当我尝试使用以下命令再次启动 docker 时:
sudo systemctl start docker
Run Code Online (Sandbox Code Playgroud)
它抛出错误:
Job for docker.service failed because the control process exited with error code.
See "systemctl status docker.service" and "journalctl -xe" for details.
Run Code Online (Sandbox Code Playgroud)
这是我解决它的方法:
我运行下面的命令来检查以下Tâmer Pinheiro 回答的问题:
sudo dockerd --debug
Run Code Online (Sandbox Code Playgroud)
它给了我以下信息:
INFO[2020-09-02T11:46:15.272833297Z] Starting up
DEBU[2020-09-02T11:46:15.273547501Z] Listener created for HTTP on unix (/var/run/docker.sock)
failed to start daemon: Unable to get the TempDir under /var/lib/docker: mkdir
/var/lib/docker/tmp: no space left on device
Run Code Online (Sandbox Code Playgroud)
我还检查了服务器的磁盘空间:
df -h
Run Code Online (Sandbox Code Playgroud)
这表明驱动器上没有剩余空间 ( /dev/sda1 filesystem):
Filesystem Size Used Avail Use% Mounted on
udev 2.0G 0 2.0G 0% /dev
tmpfs 396M 12M 384M 4% /run
/dev/sda1 9.8G 9.8G 0 100% /
tmpfs 2.0G 0 2.0G 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 2.0G 0 2.0G 0% /sys/fs/cgroup
tmpfs 396M 0 396M 0% /run/user/1000
Run Code Online (Sandbox Code Playgroud)
我意识到这个问题与设备上没有剩余空间有关。
我必须运行以下命令来为文件系统清除一些空间:
sudo find /var/log -type f -delete
sudo rm -rf /var/cache/apt/*
sudo apt clean all
Run Code Online (Sandbox Code Playgroud)
最后,我删除了该/var/lib/docker.bk文件,因为它对于服务器的9.8GB 文件系统来说太大了:
sudo rm -rf /var/lib/docker.bk
Run Code Online (Sandbox Code Playgroud)
这次当我运行命令时:
sudo systemctl restart docker
Run Code Online (Sandbox Code Playgroud)
一切正常。
就这样。
我希望这有帮助
小智 8
面对同样的问题三步走:
1:docker --debug
确定问题是网络问题:无法对 NAT 链进行编程:ZONE_CONFLICT:“docker0”已绑定到区域
2:为了解决这个问题,谷歌搜索并找到了运行命令
firewall-cmd --zone=trusted --remove-interface=docker0
Run Code Online (Sandbox Code Playgroud)
3:systemctl start docker
| 归档时间: |
|
| 查看次数: |
73819 次 |
| 最近记录: |