重启服务器后Docker容器暴露的端口外网突然访问不了!!
问题描述:
服务器内存不够了 需要加8G内存,加内存需要重启服务器,但是重启后Docker容器启动成功,端口也映射了,就是外网访问不了。
看了下容器是正常运行的端口也是映射成功的:
给阿里云提工单
给阿里云提工单了,人家也不知道什么原因,建议我自己抓包排查!!哎。。。
还是自己研究吧
google搜索了一下 关键字:docker 重启 端口映射失效
挑选了如下2篇文章看了下:
https://www.cnblogs.com/zl1991/p/10531726.html
摘要:
摘要:
总结一下 上面2篇文章,关键字就是 iptables 服务 和 Docker的端口映射存在关联
- 第一步我检查下服务器的iptables服务
可以看出 iptables服务存在问题 居然关不了
- 这里我猜测:可能是因为重启服务器导致iptables发生问题,iptables 挂了 会影响Docker的端口映射
- 如何救活iptables服务
参考:https://stackoverflow.com/questions/24756240/how-can-i-use-iptables-on-centos-7
-
OK照着做救活了iptables服务
-
开启iptables服务试了下 没有问题
-
在iptables开启的状态下 尝试下访问 依然失败
-
重新把iptables关闭,尝试下访问 成功!!!!
总结:
如果之前Docker容器暴露的端口可以访问,当你重启服务器后,访问不了了。
检查下是否iptables服务正常,
如果出现类似: Failed to restart iptables.service: Unit not found. 的错误,那么就把iptables服务重装后再试试。我就是这么尝试成功了!!!
如果您觉得阅读本文对您有帮助,请点一下“推荐”按钮,您的“推荐”将是我最大的写作动力!欢迎各位转载,转载文章之后须在文章页面明显位置给出作者和原文连接,谢谢。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· 展开说说关于C#中ORM框架的用法!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?