docker - docker-compose 文件中 network_mode 为“host”时,无法将两个节点注册到 selenium/hub
问题描述
我正在尝试构建一个本地硒/集线器来访问我的本地开发站点,它工作正常,但只有一个节点。对于两个或更多节点,我收到以下错误(仅注册了一个节点):
web-automation_chrome | 19:27:27.120 错误 [BaseServer.start] - 端口 5555 正忙,请选择一个空闲端口并使用 -port 选项 web-automation_chrome | 指定它 线程“主”java.lang.RuntimeException 中的异常:java.net.BindException:地址已在使用中
问题是如果使用network_mode: host,我们将无法使用端口。你知道如何处理这个问题吗?
这是 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
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
volumes:
- /dev/shm:/dev/shm
解决方案
推荐阅读
- python - 从列表中删除项目(如果存在)
- javascript - 嵌套开关在 React 路由器中不起作用
- .net - 获取队列消息计数
- python - python - 在循环中创建多个数据框
- sql - 如何在 SQL 中获得“nth best”记录
- java - 将动态变量发送到 ftl 格式
- azure-devops - Azure DevOps:更改拥有项目的组织
- c# - 如何在动画期间冻结控件上的滚动?
- ios - CoreBluetooth API MISUSE - iOS 13 中的 CBCentralManager 问题,如 Siri Shortcuts
- php - mgp25 Instagram-API API 请求过多