当前位置: 首页 > 工具软件 > EntDIY-NAT > 使用案例 >

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

郝君博
2023-12-01

错误原因: 
在防火墙中默认 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.

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

 类似资料: