你遇到过docker无法启动的问题吗?是防火墙的问题吗?
问题描述
在下有幸(MD)遇到过这样一种情况,在安装完docker环境之后,本想愉快的玩耍,然而dockerd根本无法启动,先记一下这个坑。
具体表现以及操作过程如下:
step1
执行systemctl start docker
直接卡死,完全不动,命令也不会退出
step2
新开一个窗口,执行systemctl status docker
,看到信息如下
● docker.service - Docker Application Container Engine
Loaded: loaded (/etc/systemd/system/docker.service; disabled; vendor preset: disabled)
Active: activating (start) since 六 2024-04-13 17:03:31 CST; 11s ago
Docs: https://docs.docker.com
Main PID: 4769 (dockerd)
Tasks: 17
Memory: 33.4M
CGroup: /system.slice/docker.service
├─4769 /usr/bin/dockerd
└─4776 containerd --config /var/run/docker/containerd/containerd.toml
...
step3
通过journeyctl -xe
查看相关日志,没有任何错误日志。
然后再通过ps -ef | grep docker
查看相关进程,发现dockerd
和containerd
的进程都在。
$ ps -ef | grep docker
... 00:00:00 /usr/bin/dockerd
... 00:00:03 containerd --config /var/run/docker/containerd/containerd.toml
于是尝试用一下docker命令,结果可想而知,也卡死,根本无法执行。
于是执行systemctl stop docker
,停止docker服务。
这个命令一样卡死,但是一定要执行,卡死后退出,然后通过kill杀掉docker进程,不stop的话,你杀掉docker进行,它又会重新给你拉起来。
不完全解决
网上AI助手一直说是防火墙的原因,各种博客资料也是说是防火墙的原因,于是我尝试关闭防火墙后再启动docker.
$ systemctl stop firewalld
$ systemctl start docker
这个时候docker正常启动,也可以正常使用,难道真的是防火墙的原因?
但是为了安全起见,肯定不能直接关闭防火墙噻,所以虽然有法子能把docker启动起来了,但是这并不是问题的根源。
由于网上AI助手的回答和大量博客,都一致认为是防火墙的问题,并且关掉防火墙后问题确实也解决了,就导致我也在防火墙和docker服务之间反复横跳,总觉得是防火墙那里配置没对,但是有无法找到其中的原因。
解决
终于,功夫不负有心人,通过大量搜索相关资料后,我看到了一个单词SELinux
,突然就有一种冲动!
于是我尝试关闭SELinux,然后问题就解决了。。。
# 临时关闭
$ setenforce 0
# 永久关闭,将SELINUX=enforcing改为SELINUX=disabled
$ vi /etc/selinux/config
SELINUX=disabled
$
好了,问题解决了,那就先到这儿吧…
原文始发于微信公众号(心猿易码):docker无法启动,防火墙背锅?
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/285738.html