【发布时间】:2018-11-30 03:44:23
【问题描述】:
我正在使用 Docker 容器执行自动化测试。我必须在同一台服务器上为多个应用程序运行测试套件。但是,如果我对每个 selenium hub docker 容器都有相同的端口,那么我不能同时运行所有这些套件。因此,我想为每个 selenium/hub docker 容器分配不同的端口。有什么办法可以更改集线器容器的端口吗?还是我需要编写自己的 dockerfile 而不使用 selenium/hub docker 镜像?
我的 docker-compose 文件是这样的
version: "3"
services:
selenium-hub:
restart: always
image: selenium/hub:latest
ports:
- "4444:4444"
environment:
- GRID_BROWSER_TIMEOUT=300
- GRID_TIMEOUT=300
selenium-chrome:
restart: always
image: selenium/node-chrome:latest
depends_on:
- selenium-hub
volumes:
- /dev/shm:/dev/shm
links:
- selenium-hub:hub
environment:
- HUB_PORT_4444_TCP_ADDR=selenium-hub
- HUB_PORT_4444_TCP_PORT=4444
- JAVA_OPT=-Xmx512m
- DBUS_SESSION_BUS_ADDRESS=/dev/null
- no_proxy=localhost
- HUB_ENV_no_proxy=localhost
- GRID_BROWSER_TIMEOUT=300
- GRID_TIMEOUT=300
selenium-firefox:
restart: always
image: selenium/node-firefox:latest
depends_on:
- selenium-hub
volumes:
- /dev/shm:/dev/shm
links:
- selenium-hub:hub
environment:
- HUB_PORT_4444_TCP_ADDR=selenium-hub
- HUB_PORT_4444_TCP_PORT=4444
- JAVA_OPT=-Xmx512m
- DBUS_SESSION_BUS_ADDRESS=/dev/null
- no_proxy=localhost
- HUB_ENV_no_proxy=localhost
- GRID_BROWSER_TIMEOUT=300
- GRID_TIMEOUT=300
【问题讨论】:
-
为什么端口是成对的?端口:-“4444:4444”
标签: selenium docker docker-compose automated-tests selenium-grid