项目场景:
为了给小程序服务端找个家,买了个腾讯云轻量服务器 - Docker ce。之前没用过这种服务器,踩了个坑,再次分享出来,帮助新手朋友避免踩坑。
问题描述
打包镜像、启动服务都正常,在管理后台的“防火墙”增加访问端口后,死活访问不到。
原因分析:
1.排查容器端口
首先查看容器端口,命令:docker ps -a
应用端口为9000,没错。
2.排查防火墙
网上有人说是firewall拦截了,用 firewall-cmd --state
命令发现“not running”,此路不通。
3.链路排查
此时发现了一个问题,防火墙原本已配置好的端口,均可访问(上图蓝色部分);访问自定义端口,错误信息为“timeout”,输入sysctl net.ipv4.ip_forward
:
至此问题明朗:服务器IP转发关闭,转发失败。
解决方案:
修改配置文件:sudo vi /etc/sysctl.conf
重启网络服务service network restart
,问题解决。