Images included:
- minium/selenium-grid-extras-hub: Image for running grid extras hub. Based on Alpine
- minium/selenium-grid-extras-base: Base images for selenium nodes. Based on Ubuntu LTS
- minium/selenium-grid-extras-chrome: Selenium Grid Extras Node with Chrome Latest
- minium/selenium-grid-extras-firefox: Selenium Grid Extras Node with Firefox Latest (x86_64)
All images are versioned after the Selenium-Grid-Extras release number.
The images can be found in the Docker Hub
The easiest way is to run with docker-compose. There is at the root of the project a compose file (hub-chrome-firefox.yml
) for running a Hub with 2 connected Nodes running Chrome and Firefox as an example:
docker-compose -f hub-chrome-firefox.yml up
Obviously you can also use the same configuration with just plain docker command line.
The tag of the selenium nodes are composed by <selenium version>-<selenium grid extras version>-<browser version> (e.g. minium/selenium-grid-extras-chrome:3.8.1-2.0.4-70.0)
You can pass JAVA_OPTS
environment variable to java process in the docker command line, or by editing your docker-compose:
environment:
- JAVA_OPTS=-Xms512m -Xmx512m
You can pass SE_OPTS
variable with additional commandline parameters for starting a hub or a node.
environment:
- SE_OPTS=-debug true
Clone the repo and from inside of each directoy you can build using docker-compose:
docker-compose build
Keep in mind the NodeBase
needs to be built before NodeChrome
and NodeFirefox
Using Makefile to build all:
SELENIUM_VERSION=3.8.1 SELENIUM_GRID_EXTRAS_VERSION=2.0.4 CHROME_VERSION=70.0 FIREFOX_VERSION=63.0 make build
In case you need to troubleshoot you can change LOG levels of different components, by changing your docker enviornments or providing a log4j.properties
environment:
- SE_OPTS=-debug true
volumes:
- ./log4j.properties:/opt/selenium/log4j.properties
For more information see: https://github.com/groupon/Selenium-Grid-Extras#changing-the-logging-on-the-grid-hub-nodes-or-selenium-grid-extras
Fullscreen doesn't work with Xvfb on Google Chrome(SeleniumHQ/selenium-google-code-issue-archive#6775) (Fixed by using fluxbox)