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 块码头工人的主要内容,如果未能解决你的问题,请参考以下文章