Docker 端口映射问题解决
在操作Docker容器时发现了其一个端口映射的BUG,具体表现为:开启容器时做了端口映射80:8080,即宿主机的80端口映射到容器内部的8080Jboss端口。一开始测试也没有什么问题,都可以联通,但经过几次重启之后,突然发现无法访问到Jboss了。代码及容器内部环境没有发生过变化,只能从宿主机外部环境考虑了。
首先,列出nat表所有链的所有规则,只显示IP地址和端口号,如下
[root@ip---- ~]# iptables -t nat -nL
Chain PREROUTING (policy ACCEPT)
target prot opt source destination
DOCKER all -- 0.0.0.0/ 0.0.0.0/ ADDRTYPE match dst-type LOCAL Chain INPUT (policy ACCEPT)
target prot opt source destination Chain OUTPUT (policy ACCEPT)
target prot opt source destination
DOCKER all -- 0.0.0.0/ !127.0.0.0/ ADDRTYPE match dst-type LOCAL Chain POSTROUTING (policy ACCEPT)
target prot opt source destination
MASQUERADE all -- 172.17.0.0/ 0.0.0.0/
MASQUERADE tcp -- 172.17.0.1 172.17.0.1 tcp dpt:
MASQUERADE tcp -- 172.17.0.5 172.17.0.5 tcp dpt:
MASQUERADE tcp -- 172.17.0.5 172.17.0.5 tcp dpt:
MASQUERADE tcp -- 172.17.0.5 172.17.0.5 tcp dpt:
MASQUERADE tcp -- 172.17.0.5 172.17.0.5 tcp dpt:
MASQUERADE tcp -- 172.17.0.8 172.17.0.8 tcp dpt:
MASQUERADE tcp -- 172.17.0.9 172.17.0.9 tcp dpt: Chain DOCKER ( references)
target prot opt source destination
DNAT tcp -- 0.0.0.0/ 0.0.0.0/ tcp dpt: to:172.17.0.1:
DNAT tcp -- 0.0.0.0/ 0.0.0.0/ tcp dpt: to:172.17.0.2:
DNAT tcp -- 0.0.0.0/ 0.0.0.0/ tcp dpt: to:172.17.0.5:
DNAT tcp -- 0.0.0.0/ 0.0.0.0/ tcp dpt: to:172.17.0.5:
DNAT tcp -- 0.0.0.0/ 0.0.0.0/ tcp dpt: to:172.17.0.5:
DNAT tcp -- 0.0.0.0/ 0.0.0.0/ tcp dpt: to:172.17.0.5:
DNAT tcp -- 0.0.0.0/ 0.0.0.0/ tcp dpt: to:172.17.0.8:
DNAT tcp -- 0.0.0.0/ 0.0.0.0/ tcp dpt: to:172.17.0.9:
在结果在我们可以清晰的看到宿主机的80端口映射给了两个172的内部容器IP——172.17.0.2、172.17.0.9,新启动的容器IP为09,02是其重启前的IP。故做如下推测:docker在重启容器之后,重新做端口映射的时候出了问题,没有将之前的映射规则删除,导致后续容器无法进行正确的端口映射。解决办法:
[root@ip---- ~]# iptables -t nat -D DOCKER
解释:删除 Chain Docker 中的第二条规则
Docker 端口映射问题解决的更多相关文章
- Docker端口映射
Docker端口映射是指将容器内应用的服务端口映射到本机宿主机器.当要在宿主机外部访问Docker内部应用时,需要对容器内应用端口进行映射. 一.容器启动时指定端口映射 容器运行时可以通过-p 或 - ...
- Docker端口映射及创建镜像演示(二)--技术流ken
前言 在上一篇博客<Docker介绍及常用操作演示--技术流ken>中,已经详细介绍了docker相关内容以及有关镜像和容器的使用命令演示. 现在我们已经可以自己下载镜像,以及创建容器了. ...
- docker端口映射,批量删除容器
docker端口映射 http://blog.csdn.net/yjk13703623757/article/details/69212521 批量删除容器 http://blog.csdn.net/ ...
- docker 端口映射错误解决方法
今天搞了半天shipyard,在网页上打开时无法显示容器和镜像,最后发现是docker端口映射错误,由于防火墙未关闭: 4月 12 18:51:29 localhost firewalld[757]: ...
- docker问题:docker端口映射错误
1 docker端口映射错误 1.1 问题描述 利用docker启动nginx容器的时候报错: 1.2 解决办法 一次执行下面的命令就可以解决 pkill docker iptables -t nat ...
- 【Docker端口映射】
Docker端口映射即将容器内开放的端口映射到宿主机端口,以实现外部网络的访问. 首先,我们先下载用于测试端口映射的镜像: [root@fedora ~]# docker pull training/ ...
- Docker端口映射及创建镜像演示(二)
Docker暴露容器方法 第一种:将容器中的一个端口映射成宿主机中的一个随机端口 第二种:将容器中的一个端口映射成宿主机中的一个端口 第三种:将容器中的一个端口映射成宿主机中的一个特定网卡上的随机端口 ...
- 详解Docker 端口映射与容器互联
详解Docker 端口映射与容器互联 1.端口映射实现访问容器 1.从外部访问容器应用 在启动容器的时候,如果不指定对应的参数,在容器外部是无法通过网络来访问容器内部的网络应用和服务的. 当容器中运行 ...
- Docker(八):Docker端口映射
1.随机映射 docker run -P -d --name mynginx1 nginx [root@node1 ~]# docker ps -l CONTAINER ID IMAGE COMMAN ...
随机推荐
- java yum安装的环境变量设置
如何(怎样)在CentOS 6.X 或 redhat 上使用安装JDK runtime environment (openjdk) ? CentOS 6.X 和 5.X 自带有OpenJDK runt ...
- iOS - (TableView中利用系统的 cell 设置 cell.textlabel 位置和大小)
今天工作稍微的遇到了一点小小的难题,需求效果中 TableView cell 中的 Label 字体大小比原先系统中的要大些且 Label 位置不是在前面,而是在中间往后,对于这个问题我第一时间也是想 ...
- html中 让 ul 的多个 li 在一行内显示
有时候会需要ul的li都在同一行显示,避免li跑到下一行去,今天遇到了这个问题,记录下来,避免忘记~ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML ...
- python实现跳板机
公司有1000多台服务器,线上机器都是禁止root登录的,所以平时是用普通用户登录,然后在su到root,密码都是在excel表中存的,这样登录一台机器,输两次命令,搜两次密码,实在很麻烦,有一天备份 ...
- 递归获取字符串内的所有图片src地址
// 递归调用获取字符串内所有的src地址 -(NSMutableArray *)getImageSrcUrlWithString:(NSString *)str withArray:(NSMutab ...
- mysql的binlog安全删除
理论上,应该在配置文件/etc/my.cnf中加上binlog过期时间的配置项,expire_logs_days = 10 但是如果没有加这一项,随着产生越来越多的binlog,磁盘被吃掉了不少.可以 ...
- Lintcode: Matrix Zigzag Traversal
Given a matrix of m x n elements (m rows, n columns), return all elements of the matrix in ZigZag-or ...
- 网易免费邮件开启smtp教程
网易免费邮件开启smtp教程 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 我们在部署zabbix邮件报警中可能会用到163.com.那么我们如何去开启smtp服务呢? 1 ...
- 树形DP+贪心(乱搞)(HDU4714)
题意:给出一个树形图,要求把该树形成一个环最少的步骤(断开一条边和形成一条边都需一步) 分析:很明显,要想把树形成一个环,就要先把其分裂成m条子链之后把子链形成环需要的步骤是2*m+1,所以只需要m最 ...
- UML: 序列图
摘自http://www.umlonline.org/school/thread-37-1-1.html 大家都进过餐馆吃饭吧?你是如何和餐厅服务员“眉来眼去”的呢?回忆一下从你进餐馆开始到你离开餐馆 ...