重启服务器后Docker容器暴露的端口外网忽然访问不了!!

 

问题描述:

服务器内存不够了 须要加8G内存,加内存须要重启服务器,可是重启后Docker容器启动成功,端口也映射了,就是外网访问不了。html

看了下容器是正常运行的端口也是映射成功的: imagenode

给阿里云提工单

给阿里云提工单了,人家也不知道什么缘由,建议我本身抓包排查!!哎。。。 imagegit

仍是本身研究吧

google搜索了一下 关键字:docker 重启 端口映射失效github

挑选了以下2篇文章看了下:web

http://www.javashuo.com/article/p-zfpazryu-bo.htmldocker

摘要: imagecentos

https://py3.io/Docker/服务器

摘要:markdown

image

总结一下 上面2篇文章,关键字就是 iptables 服务 和 Docker的端口映射存在关联

  1. 第一步我检查下服务器的iptables服务 image

能够看出 iptables服务存在问题 竟然关不了app

  1. 这里我猜想:多是由于重启服务器致使iptables发生问题,iptables 挂了 会影响Docker的端口映射
  2. 如何救活iptables服务

参考:https://stackoverflow.com/questions/24756240/how-can-i-use-iptables-on-centos-7

image

  1. OK照着作救活了iptables服务 image

  2. 开启iptables服务试了下 没有问题 image

  3. 在iptables开启的状态下 尝试下访问 依然失败

  4. 从新把iptables关闭,尝试下访问 成功!!!!

总结:

若是以前Docker容器暴露的端口能够访问,当你重启服务器后,访问不了了。

检查下是否iptables服务正常,

若是出现相似: Failed to restart iptables.service: Unit not found. 的错误,那么就把iptables服务重装后再试试。我就是这么尝试成功了!!!

相关文章
相关标签/搜索