运行Docker容器或者在1Panel添加应用容器时遇到类似错误:
服务内部错误: stderr: driver failed programming external connectivity on endpoint ... iptables: No chain/target/match by that name. (exit status 1)
这表示Docker无法在iptables的nat表中找到DOCKER链,导致端口映射规则添加失败。通常是因为手动清空了iptables规则,或防火墙软件覆盖了Docker的配置。
快速修复步骤
1. 重启Docker服务
执行命令:
systemctl restart docker
Docker重启时会自动重建所有iptables链,绝大多数情况下问题立即解决。
2. 手动创建缺失链(若重启无效)
iptables -t nat -N DOCKER
systemctl restart docker
手动创建DOCKER链后再重启Docker即可。
温馨提示
- 避免随意执行iptables -F,以免破坏Docker网络。
- 如需备份当前规则,使用iptables-save > rules.backup。
以上方法可快速恢复容器端口访问,无需重装或复杂配置。
- 本文固定链接: https://www.fengshen.cn/2026/02/docker端口映射iptables错误修复/
- 转载请注明: fengshen 发表于 一梦风神
觉得文章有用,微信打赏一元。
