docker: Error response from daemon: driver failed programming external connectivity on endpoint nginx (207349a0e9316634d1fbc3dd3adf980133c537eca5c903fe0984061d0705ffc6): (iptables failed: iptables --wait -t nat -A DOCKER -p tcp -d 0/0 --dport 80 -j DNAT --to-destination 172.17.0.3:80 ! -i docker0: iptables: No chain/target/match by that name. (exit status 1)).
时间: 2024-04-22 15:26:24 浏览: 160
Docker获取镜像报错docker: Error response from daemon
这个错误通常是由于防火墙配置问题引起的。它表明 Docker 守护进程无法在容器中创建端口转发规则。要解决这个问题,你可以尝试以下几个方法:
1. 检查防火墙配置:确保防火墙允许 Docker 守护进程创建端口转发规则。你可以暂时禁用防火墙来测试是否是防火墙引起的问题。
2. 重启 Docker 守护进程:使用以下命令重启 Docker 守护进程,并检查错误是否解决。
```
sudo systemctl restart docker
```
3. 清理残留的 iptables 链:有时候残留的 iptables 链可能导致问题。你可以尝试使用以下命令清理这些链,并重新启动 Docker 守护进程。
```
sudo iptables -F && sudo iptables -t nat -F && sudo iptables -t mangle -F && sudo iptables -X
sudo systemctl restart docker
```
如果上述方法都不起作用,你可以尝试重新安装 Docker 或更新 Docker 版本来解决问题。
阅读全文