Docker 启动容器的时候出现iptables: No chain/target/match by that name
问题:
Error response from daemon: driver failed programming external connectivity
on endpoint jenkins (a8ea15bf9b3dbed599d059d638f79f9dd5e875556c39bfb41e6563d3feedb81b):
(iptables failed: iptables --wait -t nat -A DOCKER -p tcp -d 0/0 --dport 50000 -j DNAT
--to-destination 172.18.0.6:50000 ! -i br-031aa3930383: iptables: No chain/target/match
by that name.
光看这个报错: iptables: No chain/target/match by that name,就能够看出是跟iptables有关
原因(猜测):
如果再启动docker service的时候网关是关闭的,那么docker管理网络的时候就不会操作网管的配置(chain docker),然后网关重新启动了,导致docker network无法对新container进行网络配置,也就是没有网管的操作权限,做重启处理
处理:
service docker restart
或
systemctl restart docker
使用的centos7服务器,在部署docker的过程中,因端口问题有启停firewalld服务,在centos7里使用firewalld代替了iptables。在启动firewalld之后,iptables还会被使用,属于引用的关系。所以在docker run的时候,iptables list里没有docker chain,重启docker engine服务后会被加入到iptables list里面。(有必要深入研究一下docker network)
另一个方法:
关闭网关(不建议)
systemctl stop firewalld
systemctl stop iptables
相关文章
- Docker入门之六端口映射与容器互联
- 生成springboot docker镜像 并上传到阿里云镜像厂库
- docker 应用篇————swarm[二十]
- 大叔经验分享(71)docker容器中使用jvm工具
- Docker的Windows容器初体验
- java 11 完全支持Linux容器(包括Docker)
- docker学习-docker容器
- Docker Nginx容器的简单操作与使用
- Docker 基础操作 容器自启动 删除镜像和删除容器
- python操作docker SDK:Docker SDK for Python
- Docker 将已经部署的容器设置为自动启动
- docker 容器开机启动
- 004-docker命令-docker资源配置-Docker容器CPU、memory资源限制
- 79.第十七章 企业级容器技术docker -- Docker 镜像制作和管理、Docker 数据管理(七)
- 78.第十七章 企业级容器技术docker -- Docker 镜像制作和管理(六)
- RTX30系列linux+docker容器的GPU配置(tensorflow-gpu==1.15~2.x、tensorrt 7、cuda、cudnn)附加resnet50模型测试
- 【云原生之Docker实战】部署docker管理平台shipyard
- 【云原生之Docker实战】使用docker部署nacos平台
- Docker容器实战之部署论坛
- Docker监控容器资源的占用情况
- Linux centos7 docker部署gitlab私有服务器
- Docker学习笔记07:docker使用之容器使用
- Docker-ubuntu18.04容器内部 install QT5 (C++)及启动界面编译demo:分形几何(曼德布罗集)实现
- 云原生之使用Docker部署轻量级web服务器lighthttpd
- Docker--查看容器的启动命令(亲测有效)
- docker的几种安装方式