启动docker容器时报错:iptables: No chain/target/match by that name.

转载来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/25465866/viewspace-2637271/
具体报错:
[root @centos72 ~]# docker run -itd -v /data/drug_app_logs:/root/drug/logs —storage-opt size=30G -p 5001:22 -p 8989:8080 drug_app:latest /usr/sbin/sshd -D
b95132b92ec379e458d2e968eb78e642d57ed9bb895052f38992d839f35704e6
docker: Error response from daemon: driver failed programming external connectivity on endpoint adoring_lamport (ea38c59bb95348ac62a87bb4e0a41436ed64d67784312b020a21c4bc273fd859): (iptables failed: iptables —wait -t nat -A DOCKER -p tcp -d 0/0 —dport 8989 -j DNAT —to-destination 172.17.0.2:8080 ! -i docker0: iptables: No chain/target/match by that name.
(exit status 1)).

通过网上查找:
因为在进行原地址到目标地址转换的时候没有在docker主机的iptables规则中找到nat表规则,只有filter表规则。
在filter表上面增加nat表配置规则信息,需要说明的是docker容器的网段是172.17.0.0/16,另外需要注意filter表中也要有docker链的相关配置。

然后想起刚刚把防火墙关了,造成了docker chain的变动,因此报错。

解决方法:
systemctl restart docker

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容