selenium/standalone-chromium本镜像提供集成 Chromium 浏览器的 Selenium Grid Standalone 环境,用于实现 WebDriver 测试的远程执行。通过该镜像,用户可快速部署包含 Chromium 浏览器的 Selenium Grid 独立节点,无需手动配置浏览器及驱动依赖。
bashdocker run -d -p 4444:4444 -p 7900:7900 --shm-size="2g" selenium/standalone-chromium:latest
参数说明:
-d:后台运行容器-p 4444:4444:映射 Selenium Grid 服务端口(客户端测试连接端口)-p 7900:7900:映射 VNC 服务端口(用于可视化查看容器内浏览器)--shm-size="2g":设置共享内存大小(浏览器运行需较大共享内存,避免崩溃)创建 docker-compose.yml 文件:
yamlversion: '3' services: selenium-standalone: image: selenium/standalone-chromium:latest ports: - "4444:4444" # Selenium Grid 服务端口 - "7900:7900" # VNC 可视化端口 shm_size: "2g" # 共享内存配置 restart: unless-stopped # 异常退出后自动重启
启动服务:
bashdocker-compose up -d
连接 Grid 服务:将 WebDriver 客户端配置指向 Grid 服务地址
示例(Java):
javaWebDriver driver = new RemoteWebDriver( new URL("http://localhost:4444/wd/hub"), new ChromeOptions() );
执行测试:客户端测试脚本将通过 Grid 服务在容器内的 Chromium 浏览器中执行
通过 VNC 服务查看容器内浏览器实时画面:
http://localhost:7900/?autoconnect=1&resize=scale&password=secretsecret(VNC 连接密码,镜像内置默认值)镜像标签支持以下格式,可根据需求选择精确版本或简化版本:
基础格式(包含浏览器版本与发布日期):
selenium/standalone-chromium-<浏览器主版本>.<次版本>.<修订号>-<发布日期>
完整格式(包含浏览器、驱动、Grid 版本及发布日期):
selenium/standalone-chromium-<浏览器版本>-chromedriver-<驱动版本>-grid-<Grid版本>-<发布日期>
以 Chromium 125.0.6422.60、ChromeDriver 125.0.6422.60、Selenium Grid 4.21.0、发布日期 20240522 为例,可用标签包括:
| 标签格式 | 说明 |
|---|---|
125.0 | 仅指定浏览器主版本(自动匹配最新次版本及发布日期) |
125.0-20240522 | 指定浏览器主版本及发布日期 |
125.0-chromedriver-125.0 | 指定浏览器版本及驱动版本 |
125.0.6422.60-chromedriver-125.0.6422.60-grid-4.21.0-20240522 | 完整版本标签(推荐用于生产环境) |
125.0)快速获取最新版本--shm-size="2g"(或更大值)指定共享内存,否则可能因内存不足导致浏览器崩溃host 或自定义网络)
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务