Centos 7 docker 启动容器 iptables 报 No chain/target/match by that name

前端之家收集整理的这篇文章主要介绍了Centos 7 docker 启动容器 iptables 报 No chain/target/match by that name前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

启动一个有 nat 映射端口的容器时,iptables 报 No chain/target/match by that name

找了N多网站和官方issue后,还是没找到真正的解决方法,网上到处转载的只是分析了原因,并没有明确的解决方案,为此与同事通宵加班终于解决了这个问题。

找到系统的/etc/sysconfig/iptables,如果没有用以下命令保存一下,然后查看里边的内容

发现内容如下

查看启动容器的报错信息发现-A DOCKERDOCKER链,但在iptables文件里并没有找到,

由于之前在自己的系统(archlinux)学习使用docker时并没遇到这问题,

所以马上去看了下自己系统里的iptables的文件

内容如下

对比后以去掉不相关的规则,以现*nat规则里有以下的对于docker的配置

*filter规则里对docker的配置如下

去掉不相关规则后的配置文件如下(可以直接用):

然后再加上自己服务器的过滤规则,合并后覆盖到Centos 7的/etc/sysconfig/iptables文件

重启iptables 服务

两次启动对应docker容器,

发现容器启动成功,虽然有警告,但并不影响容器的使用

相关推荐:http://blog.csdn.net/fwj380891124/article/details/53023245

     http://blog.jobbole.com/98869/

猜你在找的CentOS相关文章