Skip to content

docker在Centos7下防火墙问题

背景

公司使用docker在部署一些实际的项目时候,时常出现一些灵异的网络问题,导致服务不可用之类的。

原因分析

根据资料查询结合自己已知的,centos7的防火墙默认为 firewall,但firewall 的底层是使用iptables进行数据过滤的,而docker也是使用iptables来进行网络隔离和管理。正好最近出问题是因为添加防火墙策略相关操作之后发生的。
分析之后的原因为Centos7的firewall与Docker 产生冲突。在修改了 firewalld规则之后重启,或者在docker启动之后才启动firewall,firewall将从iptables中移除docker的规则,从而影响了 Docker 的正常工作。

解决办法(仅对Centos7)

  • 操作系统退回iptables来代替firewalld
  • 关闭防火墙(不安全,不建议)
  • 清除现有的docker 容器,关闭docker,启动防火墙,或者重启防火墙,重启docker服务,重新创建新的容器。
发表评论

电子邮件地址不会被公开。 必填项已用*标注