Article

解决Docker容器 iptables问题---docker: Error response from daemon: driver failed programming external conne...

问题现象

最近在研究Docker容器日志管理时,启动容器出现iptables相关报错,具体问题如下

复制代码
docker: Error response from daemon: driver failed programming external connectivity on endpoint rancher (f7043452a8b1d13ba0be11c20b37471426f139ad047a36046469ceadbee46de9):  (iptables failed: iptables --wait -t nat -A DOCKER -p tcp -d 0/0 --dport 444 -j DNAT --to-destination 172.17.0.2:443 ! -i docker0: iptables: No chain/target/match by that name.
 (exit status 1)).

解决办法

经过查阅资料得知是docker0网桥的原因,解决上面报错问题需要进行一下步骤

1.kill掉docker所有进程

复制代码
pkill docker

2.清空nat表的所有链

复制代码
iptables -t nat -F

3.停止docker默认网桥docker0

复制代码
ifconfig docker0 down

4.删除docker0网桥

复制代码
brctl delbr docker0

5.重启docker服务

复制代码
systemctl restart docker

至此,成功运行docker容器

评论
0 条评论