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

docker-compose使用host网络模式时无法向selenium/hub注册多个节点

问题原因

network_mode: host 模式下所有容器共享宿主机的端口资源,Selenium Node容器默认启动时都会尝试绑定5555端口,启动第二个节点时就会出现端口占用冲突。

解决方案

给每个节点容器通过环境变量指定不同的服务端口即可,Selenium官方镜像支持通过SE_NODE_PORT参数自定义节点启动端口。

修改后的docker-compose配置如下:

services:

  hub:
    image: selenium/hub
    network_mode: "host"
    environment:
      GRID_MAX_SESSION: 16
      GRID_BROWSER_TIMEOUT: 3000
      GRID_TIMEOUT: 3000

  chrome:
    image: selenium/node-chrome
    container_name: web-automation_chrome
    depends_on:
      - hub
    network_mode: "host" 
    environment:
      HUB_PORT_4444_TCP_ADDR: localhost 
      HUB_PORT_4444_TCP_PORT: 4444
      SE_NODE_PORT: 5555 # chrome节点指定用5555端口
    volumes:
      - /dev/shm:/dev/shm

  firefox:
    image: selenium/node-firefox
    container_name: web-automation_firefox
    depends_on:
      - hub
    network_mode: "host"
    environment:
      HUB_PORT_4444_TCP_ADDR: localhost 
      HUB_PORT_4444_TCP_PORT: 4444
      SE_NODE_PORT: 5556 # firefox节点指定用5556端口,和其他节点不冲突即可
    volumes:
      - /dev/shm:/dev/shm

补充说明

如果后续需要新增更多节点,只需要依次给每个节点指定不同的SE_NODE_PORT值,确保没有端口重复即可,端口范围只要是宿主机未被占用的端口都可以使用。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 16:54:03