iptables 块码头工人

Posted

技术标签:

【中文标题】iptables 块码头工人【英文标题】:Iptables bloque docker 【发布时间】:2021-11-16 05:00:33 【问题描述】:

从昨天开始,我已经重新启动了 docker 两次,实际上我有一个 Etherpad 容器崩溃并出现此错误:

**ERROR: for etherpad  Cannot start service etherpad: driver failed programming external connectivity on endpoint etherpad_etherpad_1 (id_contenaire) 
(iptables failed: iptables --wait -t nat -A DOCKER -p tcp -d 0/0 --dport 9001 -j DNAT --to-destination 172.21.0.3:9001 ! -i br-97eb28b9d479: iptables: No chain/target/match by that name.
 (exit status 1))**

,

在视觉上它说端口 9001 正在被另一个进程使用,但是 netstat -tlunp | grep -w "9001" 在此端口上不显示任何内容。

我在谷歌上搜索了一下以找到解决方案,但唯一的方法是重新启动 docker:systemctl stop docker 和 systemctl start docker(这不是最好的),

谢谢你的一切

【问题讨论】:

您是否有任何其他正在运行的 docker 容器使用此端口? docker ps -a的输出是什么 没有其他服务使用端口 9001 【参考方案1】:

我终于找到了错误的来源,实际上存在另一个非活动容器(etherpad),当前容器的网络被分配到该容器(这造成了混乱),必须: docker container ls, 那么

docker container rm id_container_last_etherpad

删除这个容器,并且 docker network ls,然后是docker network rm etherpad_last_network

希望这对其他人有所帮助

【讨论】:

以上是关于iptables 块码头工人的主要内容,如果未能解决你的问题,请参考以下文章

码头工人群或牧场牛中的芹菜工人

芹菜多里面码头工人容器

iptables

牧场主网络码头工人撰写

有闪亮的服务器专业问题的码头工人

码头工人组成:NodeJS + MongoDB