We will be experimenting, in this blog post, with installing Docker, deploying Selenium HQ's various Chrome and Firefox Docker images, regular versions, and using them with their Docker image of Selenium Hub.
Later on, we will tie this in with my BasicWebDriverFramework_Gradle, including into the project our work with PageFactories, and adding RemoteWebDriver and DesiredCapabilities functionality. In the post after this, we will build on this information, using Docker Compose to scale Selenium Grid.
Docker: https://www.docker.com/
SeleniumHQ Images: https://hub.docker.com/u/selenium/
Docker-Compose: https://docs.docker.com/compose/
- Want to tinker a bit with setting up a virtual environment with VirtualBox, Vagrant, and Docker first?
- Want a practice exercise setting up Docker?
- Unfamiliar with the command line? Want a practice exercise setting up Selenium Grid?
Normally, to set up Grid, you would:
- Download Selenium-StandAlone-Server
- Start up the Selenium Hub: java -jar selenium-server-standalone-2.53.0.jar -role hub
- Start up various nodes: java -jar selenium-server-standalone-2.53.0.jar -role node -hub http://localhost:4444/grid/register -browser browserName=firefox,maxInstances=2 -browser browserName=chrome,maxInstances=2
... Then the Selenium Grid would be ready to use at http://localhost:4444.
With Docker, it is still that same three step process... except we can bundle all of those three steps into one with Docker Compose. That is for later blog posts. First, though, let's talk about Docker...


