Docker Hub | GitHub Container Registry | Quay.io
geckodriver is a proxy for using W3C WebDriver compatible clients to interact with Gecko-based browsers.
This program provides the HTTP API described by the WebDriver protocol to communicate with Gecko browsers, such as Firefox. It translates calls into the Marionette remote protocol by acting as a proxy between the local and remote ends.
This image bundles geckodriver with Firefox and is suitable for running headless tests.
docker run -d -p 4444:4444 instrumentisto/geckodriver
After that you can connect to geckodriver that is listening on 127.0.0.1:4444
. Only headless mode is supported.
Consider using --network=host
option for running image if you want to run tests on local server.
Consider to increase shared memory size (--shm-size 2g
option), otherwise you may experience unexpected Firefox crashes.
Docker Compose gotchas
Accessing via 127.0.0.1
works well once launched as a simple container. However, in a Docker Compose environment, there likely would be complications due to its networking modes. By default, services
are reached by its name, which the launched geckodriver is unaware of. That's why the allowed hosts should be explicitly specified (either via --host
argument, or --allow-hosts
one for multiple entries):
services:
stuff:
image: whatever
environment:
WEBDRIVER_URL: "http://webdriver:4444"
# ^^^^^^^^^ using service name
webdriver:
image: instrumentisto/geckodriver
command: "--host=webdriver --binary=/opt/firefox/firefox --log=debug"
# ^^^^^^^^^^^^^^^^ allow service name for geckodriver
Otherwise, geckodriver won't accept any incoming requests.
Latest tag of the latest Firefox and geckodriver versions on the latest stable Debian version.
Latest tag of the latest Firefox and geckodriver versions on the latest <name>
Debian version.
Latest tag of the concrete X.Y
(or X.Y.Z
) Firefox version with the latest geckodriver version.
Latest tag of the concrete X.Y
(or X.Y.Z
) Firefox version with the concrete A.B.C
geckodriver version.
Concrete N
image revision tag of the concrete X.Y
(or X.Y.Z
) Firefox version with the concrete A.B.C
geckodriver version.
Once built, it's never updated.
Firefox and geckodriver are licensed under Mozilla Public License 2.0.
As with all Docker images, these likely also contain other software which may be under other licenses (such as Bash, etc from the base distribution, along with any direct or indirect dependencies of the primary software being contained).
As for any pre-built image usage, it is the image user's responsibility to ensure that any use of this image complies with any relevant licenses for all software contained within.
The sources for producing instrumentisto/geckodriver
Docker image are licensed under Blue Oak Model License 1.0.0.
We can't notice comments in the DockerHub (or other container registries) so don't use them for reporting issue or asking question.
If you have any problems with or questions about this image, please contact us through a GitHub issue.