You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Docker环境下Flask应用无法远程连接Selenium Grid问题求助

问题根因

Docker容器默认拥有独立的网络命名空间,web容器内的localhost指向容器自身,而非宿主机或其他容器,因此无法通过localhost:4444访问到Selenium Hub服务。

解决方案

同一个docker-compose.yml中定义的所有服务默认会加入同一内部网桥网络,可直接通过服务名实现内网DNS解析通信。

  1. 修改Flask应用中Selenium Remote的连接地址,将
driver = webdriver.Remote(command_executor="http://localhost:4444")

修改为

driver = webdriver.Remote(command_executor="http://selenium-hub:4444")

注:selenium-hub是你配置中Selenium Hub服务的名称,同时你也指定了对应容器名为此值,可直接作为内部通信的域名使用。

可选验证步骤

进入web容器执行以下命令,确认网络连通性:

curl http://selenium-hub:4444

正常返回Hub页面相关内容即说明内网通信正常。

补充说明:你当前配置中Selenium Hub的4444端口映射仅用于宿主机访问,容器之间内网通信无需依赖端口映射。

内容的提问来源于stack exchange,提问作者Asmith9555

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 11:39:05