session-queue Docker 镜像下载 - 轩辕镜像
session-queue 镜像详细信息和使用指南
session-queue 镜像标签列表和版本信息
session-queue 镜像拉取命令和加速下载
session-queue 镜像使用说明和配置指南
Docker 镜像加速服务 - 轩辕镜像平台
国内开发者首选的 Docker 镜像加速平台
极速拉取 Docker 镜像服务
相关 Docker 镜像推荐
热门 Docker 镜像下载
session-queue 镜像详细信息
session-queue 镜像标签列表
session-queue 镜像使用说明
session-queue 镜像拉取命令
Docker 镜像加速服务
轩辕镜像平台优势
镜像下载指南
相关 Docker 镜像推荐
session-queue 镜像详细说明
session-queue 使用指南
session-queue 配置说明
session-queue 官方文档
Selenium Grid SessionQueue Docker镜像文档
镜像概述和主要用途
本镜像提供Selenium Grid SessionQueue组件,用于Selenium分布式Grid架构中。该组件需与分布式Grid的其他组件(Router、Distributor、Event Bus、Session Map、Nodes等)配合使用,共同实现WebDriver测试的远程执行功能。
核心功能和特性
核心功能
- 管理WebDriver测试会话的排队机制,确保测试请求在节点资源不足时有序等待
- 与分布式Grid其他组件协同工作,接收来自Distributor的会话请求并进行队列管理
- 维护会话请求的优先级和顺序,避免资源竞争和请求冲突
特性
- 适配Selenium Grid分布式模式,支持大规模测试场景
- 轻量级设计,专注于会话队列管理,资源占用低
- 与Event Bus、Session Map等组件松耦合,便于独立扩展和维护
使用场景和适用范围
适用场景
- 大规模WebDriver测试执行:当并发测试请求数量超过当前可用节点容量时,通过队列机制平滑处理请求峰值
- 资源精细化管理:在分布式Grid环境中,配合其他组件实现CPU、RAM资源的动态分配
- 稳定性保障:避免因瞬间大量请求导致Grid组件过载或测试失败
适用范围
- 需要并行执行大量Web自动化测试的团队或组织
- 基于Selenium Grid构建的持续集成/持续部署(CI/CD)流程
- 对测试执行稳定性和资源利用率有较高要求的自动化测试架构
详细使用方法和配置说明
Docker Compose部署示例
SessionQueue组件需与分布式Grid的其他组件协同运行,以下是完整的docker-compose.yml配置示例:
yml# 执行此docker-compose文件:`docker-compose -f docker-compose-v3-full-grid.yml up` # 添加`-d`参数可后台运行 # 停止执行:按Ctrl+C,然后执行`docker-compose -f docker-compose-v3-full-grid.yml down` version: "3" services: # 事件总线:协调Grid各组件间通信 selenium-event-bus: image: selenium/event-bus:latest container_name: selenium-event-bus ports: - "4442:4442" # 发布端口 - "4443:4443" # 订阅端口 - "5557:5557" # 调试端口 # 会话映射:存储和管理活跃会话信息 selenium-sessions: image: selenium/sessions:latest container_name: selenium-sessions ports: - "5556:5556" depends_on: - selenium-event-bus environment: - SE_EVENT_BUS_HOST=selenium-event-bus # 事件总线主机名 - SE_EVENT_BUS_PUBLISH_PORT=4442 # 事件总线发布端口 - SE_EVENT_BUS_SUBSCRIBE_PORT=4443 # 事件总线订阅端口 # 会话队列:当前组件,管理测试会话队列 selenium-session-queue: image: selenium/session-queue:latest container_name: selenium-session-queue ports: - "5559:5559" # 会话队列服务端口 # 分发器:分配测试会话到可用节点 selenium-distributor: image: selenium/distributor:latest container_name: selenium-distributor ports: - "5553:5553" depends_on: - selenium-event-bus - selenium-sessions - selenium-session-queue environment: - SE_EVENT_BUS_HOST=selenium-event-bus - SE_EVENT_BUS_PUBLISH_PORT=4442 - SE_EVENT_BUS_SUBSCRIBE_PORT=4443 - SE_SESSIONS_MAP_HOST=selenium-sessions # 会话映射服务主机名 - SE_SESSIONS_MAP_PORT=5556 # 会话映射服务端口 - SE_SESSION_QUEUE_HOST=selenium-session-queue # 会话队列服务主机名 - SE_SESSION_QUEUE_PORT=5559 # 会话队列服务端口 # 路由:接收外部测试请求并转发到相应组件 selenium-router: image: selenium/router:latest container_name: selenium-router ports: - "4444:4444" # Grid对外服务端口 depends_on: - selenium-distributor - selenium-sessions - selenium-session-queue environment: - SE_DISTRIBUTOR_HOST=selenium-distributor - SE_DISTRIBUTOR_PORT=5553 - SE_SESSIONS_MAP_HOST=selenium-sessions - SE_SESSIONS_MAP_PORT=5556 - SE_SESSION_QUEUE_HOST=selenium-session-queue - SE_SESSION_QUEUE_PORT=5559 # 浏览器节点:Chrome chrome: image: selenium/node-chrome:latest shm_size: 2gb # 共享内存大小,避免Chrome崩溃 depends_on: - selenium-event-bus environment: - SE_EVENT_BUS_HOST=selenium-event-bus - SE_EVENT_BUS_PUBLISH_PORT=4442 - SE_EVENT_BUS_SUBSCRIBE_PORT=4443 # 浏览器节点:Edge edge: image: selenium/node-edge:latest shm_size: 2gb depends_on: - selenium-event-bus environment: - SE_EVENT_BUS_HOST=selenium-event-bus - SE_EVENT_BUS_PUBLISH_PORT=4442 - SE_EVENT_BUS_SUBSCRIBE_PORT=4443 # 浏览器节点:Firefox firefox: image: selenium/node-firefox:latest shm_size: 2gb depends_on: - selenium-event-bus environment: - SE_EVENT_BUS_HOST=selenium-event-bus - SE_EVENT_BUS_PUBLISH_PORT=4442 - SE_EVENT_BUS_SUBSCRIBE_PORT=4443
部署步骤
- 将上述配置保存为
docker-compose-v3-full-grid.yml - 启动Grid集群:
如需后台运行,添加bashdocker-compose -f docker-compose-v3-full-grid.yml up-d参数:bashdocker-compose -f docker-compose-v3-full-grid.yml up -d - 访问Grid控制台:打开浏览器访问
http://localhost:4444 - 停止集群:
bash
docker-compose -f docker-compose-v3-full-grid.yml down
镜像标签选择
标签结构
SessionQueue镜像标签遵循以下格式:
selenium/session-queue-<Major>.<Minor>.<Patch>-<YYYYMMDD>
标签示例(以Selenium Grid 4.9.0版本为例,发布日期20230426)
| 标签格式 | 说明 |
|---|---|
4 | 最新的4.x系列版本 |
4.9 | 最新的4.9.x系列版本 |
4.9.0 | 特定版本4.9.0 |
4.9.0-20230426 | 包含发布日期的精确版本(推荐用于生产环境) |
使用建议
- 生产环境推荐使用包含完整版本号和日期的标签(如
4.9.0-20230426),避免因latest标签自动更新导致兼容性问题 - 开发环境可使用主版本或次版本标签(如
4或4.9),快速获取最新特性
完整文档与许可证
完整文档
有关Selenium Docker镜像的更多详细信息,请参考GitHub项目README。
许可证
本项目源代码基于Apache License 2.0开源协议发布,由志愿者贡献者开发维护。
用户好评
来自真实用户的反馈,见证轩辕镜像的优质服务
常见问题
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
轩辕镜像下载加速使用手册
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
登录仓库拉取
通过 Docker 登录认证访问私有仓库
Linux
在 Linux 系统配置镜像加速服务
Windows/Mac
在 Docker Desktop 配置镜像加速
Docker Compose
Docker Compose 项目配置加速
K8s Containerd
Kubernetes 集群配置 Containerd
宝塔面板
在宝塔面板一键配置镜像加速
群晖
Synology 群晖 NAS 配置加速
飞牛
飞牛 fnOS 系统配置镜像加速
极空间
极空间 NAS 系统配置加速服务
爱快路由
爱快 iKuai 路由系统配置加速
绿联
绿联 NAS 系统配置镜像加速
威联通
QNAP 威联通 NAS 配置加速
Podman
Podman 容器引擎配置加速
Singularity/Apptainer
HPC 科学计算容器配置加速
其他仓库配置
ghcr、Quay、nvcr 等镜像仓库
专属域名拉取
无需登录使用专属域名加速
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429