启动docker容器时报iptables failed: iptables --wait -t nat -A DOCKER -p tcp -d 0/0 --dport错误

熊孩纸 阅读:4562 2021-09-05 18:33:04 评论:0

错误原因: 
在防火墙中默认 nat 是 REJECT的,所以端口映射被拒绝。

解决方法:

vim /etc/sysconfig/iptables 
##注释掉下面这一行,这行的意思是拒绝掉所有的FORWARD,拒绝的提示信息是icmp-host-prohibited(禁止) 
#-A FORWARD -j REJECT --reject-with icmp-host-prohibited 
 
#重启iptables 
systemctl restart iptables.service 

网上其他的解决方法:基本都是重置docker0网络,重启docker

pkill docker  
iptables -t nat -F  
ifconfig docker0 down  
brctl delbr docker0  
docker -d  
##重启docker服务 
systemctl restart docker

网上有的说是只重启docker即可,即只执行systemctl restart docker,我自己也是这样解决掉问题的。

如果还是不行的话,就按照上面的方式试一试,可能是网络原因造成的

可以参考

docker 报错整理

docker学习笔记之七:解决 -i docker0: iptables: No chain/target/match by that name.

这两篇文章写的还是比较透彻的,主要就是防火墙映射转发之类的,需要了解下防火墙相关的只是,因此暂时不做深入了解,等有时间了再好好研究防火墙。


标签:java
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

搜索
排行榜
关注我们

一个IT知识分享的公众号