今天,想在1台centos7上安装docker,再部署smokeping监控程序,安装好docker后,用
systemctl start docker
发现无法启动
通过journalctl -xe命令查看日志,没发现有用的错误
# journalctl -xe -- Subject: Unit docker.service has failed -- Defined-By: systemd -- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel -- -- Unit docker.service has failed. -- -- The result is failed. 6月 17 16:39:26 cheshi196 systemd[1]: Unit docker.service entered failed state. 6月 17 16:39:26 cheshi196 systemd[1]: docker.service failed. 6月 17 16:39:28 cheshi196 systemd[1]: docker.service holdoff time over, scheduling restart. 6月 17 16:39:28 cheshi196 systemd[1]: Stopped Docker Application Container Engine. -- Subject: Unit docker.service has finished shutting down -- Defined-By: systemd -- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel -- -- Unit docker.service has finished shutting down. 6月 17 16:39:28 cheshi196 systemd[1]: start request repeated too quickly for docker.service 6月 17 16:39:28 cheshi196 systemd[1]: Failed to start Docker Application Container Engine. -- Subject: Unit docker.service has failed -- Defined-By: systemd -- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel -- -- Unit docker.service has failed. -- -- The result is failed. 6月 17 16:39:28 cheshi196 systemd[1]: Unit docker.service entered failed state. 6月 17 16:39:28 cheshi196 systemd[1]: docker.service failed.
通过查询docker状态,也没发现有用的日志
# systemctl status docker ● docker.service - Docker Application Container Engine Loaded: loaded (/usr/lib/systemd/system/docker.service; disabled; vendor preset: disabled) Active: failed (Result: start-limit) since 二 2025-06-17 16:39:28 CST; 46s ago Docs: https://docs.docker.com Process: 24752 ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock (code=exited, status=1/FAILURE) Main PID: 24752 (code=exited, status=1/FAILURE) 6月 17 16:39:26 cheshi196 systemd[1]: Failed to start Docker Application Container Engine. 6月 17 16:39:26 cheshi196 systemd[1]: Unit docker.service entered failed state. 6月 17 16:39:26 cheshi196 systemd[1]: docker.service failed. 6月 17 16:39:28 cheshi196 systemd[1]: docker.service holdoff time over, scheduling restart. 6月 17 16:39:28 cheshi196 systemd[1]: Stopped Docker Application Container Engine. 6月 17 16:39:28 cheshi196 systemd[1]: start request repeated too quickly for docker.service 6月 17 16:39:28 cheshi196 systemd[1]: Failed to start Docker Application Container Engine. 6月 17 16:39:28 cheshi196 systemd[1]: Unit docker.service entered failed state. 6月 17 16:39:28 cheshi196 systemd[1]: docker.service failed.
最后通过查看message日志,发现了明显的错误
tail -n 200 /var/log/message Jun 17 16:43:04 cheshi196 firewalld: 2025-06-17 16:43:04 ERROR: COMMAND_FAILED: '/sbin/iptables -w2 -t filter -C FORWARD -i docker0 -o docker0 -j DROP' failed: iptables: Bad rule (does a matching rule exist in that chain?). Jun 17 16:43:04 cheshi196 firewalld: 2025-06-17 16:43:04 ERROR: INVALID_ZONE: docker
问题:
是由于firewalld
与docker
冲突的问题,从本质上来说,应该是firewalld
与iptables
的冲突
解决办法一:关闭firewalld
systemctl stop firewalld
解决办法二:更新系统
yum update all
在Centos上安装最新版Docker对linux版本有要求,最新的Docker不支持老版本的CentOS。
我的是7.6.升级后可以启动!
声明:欢迎大家光临本站,学习IT运维技术,转载本站内容,请注明内容出处”来源刘国华教育“。如若本站内容侵犯了原著者的合法权益,请联系我们进行处理。