前言
使用docker运行redis时,出现Error response from daemon: driver Failed programming external connectivity on endpoint redis异常信息
异常信息
1 docker: Error response from daemon: driver Failed programming external connectivity on endpoint redis (343da2a78e0a1a1cdbe40932ecd2892a818c9ecfe1ac9f6e1894d8bdff13cbe2): (iptables Failed: iptables --wait -t filter -A DOCKER ! -i docker0 -o docker0 -p tcp -d 172.17.0.2 --dport 6379 -j ACCEPT: iptables: No chain/target/match by that name.
异常原因
因为在启动docker容器的时候或者做docker配置的时候,还对防火墙设置重新启动等配置,这样会清除docker的相关配置,导致在查询防火墙规则的时候显示不到docker的链。
iptables -L
查询iptables 链
而docker容器的底层原理:
在启动docker的时候会自动在iptables中注册一个链,通过防火墙的链也可以找到其注册的信息,主要注册这些链,是docker中的容器为了暴露端口而使用的,具体原因是你删除了iptables中的链
解决办法
重启docker容器
1 systemctl restart docker
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。