如何在EC2上运行带Web UI的Locust?Docker部署后Web UI无法打开如何解决
Locust Docker部署在EC2后Web UI无法访问排查方案
已完成Locust Docker镜像部署,容器运行状态正常,但访问Web UI无响应,对应故障截图如下:
排查步骤
- 检查EC2安全组入站规则:确认已开放Locust默认端口8089的TCP入站权限,测试阶段可临时放行当前客户端公网IP访问,生产环境禁止配置为0.0.0.0/0全网段放行。
- 验证Docker端口映射配置:执行
docker ps查看Locust容器的端口映射规则,确认存在0.0.0.0:8089->8089/tcp的映射关系,如无映射需重启容器并添加-p 8089:8089启动参数。 - 确认Locust监听地址配置:容器内启动Locust时需添加
--web-host=0.0.0.0参数,避免默认绑定127.0.0.1导致外部流量无法访问,参考启动命令:locust -f 测试脚本路径 --web-host=0.0.0.0。 - 排查EC2本地防火墙规则:执行
sudo ufw status或sudo firewall-cmd --list-ports确认EC2系统层面已放行8089端口,如未放行需添加对应规则后重试。 - 本地连通性验证:在EC2实例内执行
curl http://localhost:8089,如果能正常返回页面内容说明Locust服务运行正常,问题出在外部网络链路;如果无返回值,执行docker logs 容器ID查看Locust运行日志定位服务异常原因。 - 客户端链路验证:在本地设备执行
telnet EC2公网IP 8089验证端口连通性,如连接失败优先排查安全组、网络ACL配置;如连接成功但页面无法加载,排查浏览器插件、网络代理是否拦截了对应请求。 - 分布式部署场景注意:仅Locust主节点会启动Web UI服务,工作节点无Web访问入口,确认访问的是主节点对应的公网IP与端口。
内容的提问来源于stack exchange,提问作者Sarah Khaldun
相关产品推荐
相关产品推荐

