Supported browsers

WebSummoner launches any Docker image that speaks WebDriver, but the maintained images below are the recommended path: pinned browser versions, matching drivers, VNC and audio support baked in.

Browser Image Current version WebDriver
Google Chrome websummoner/chrome 152.0.7977.64 ChromeDriver 152.0.7977.64
Mozilla Firefox websummoner/firefox 155.0.0 geckodriver 0.37.1
Microsoft Edge websummoner/edge 152.0.4191.53 msedgedriver 152.0.4191.53
Brave websummoner/brave 1.94.117 ChromeDriver (Chromium core)
Yandex Browser websummoner/yandex 26.6.1.1083 YandexDriver
Opera websummoner/opera 135.0.5973.66 ChromeDriver — see Opera
WebKit (Safari engine) websummoner/safari 2.52.6 WebKitWebDriver — see WebKit

Every image embeds a VNC server; there are no separate vnc_* image variants. Turn the live screen on per session with the enableVNC capability, or set ENABLE_VNC=true in the container environment.

Image tags

Each browser publishes three tag levels, so you can pin as loosely or as tightly as you like:

Level Example Meaning
line chrome:152 floats — rebuilt with the newest patch of that line
major.minor chrome:152.0 compatibility alias
full chrome:152.0.7977.64 immutable, driver-matched pin

Ready-made images

docker pull websummoner/chrome:152.0.7977.64
docker pull websummoner/firefox:155.0.0
docker pull websummoner/edge:152.0.4191.53
docker pull websummoner/brave:1.94.117
docker pull websummoner/yandex:26.6.1.1083
docker pull websummoner/opera:135.0.5973.66
docker pull websummoner/safari:2.52.6

All images are free to use and published on Docker Hub. A minimal browsers.json for two of them:

{
  "chrome":  { "default": "152.0.7977.64",
               "versions": { "152.0.7977.64": { "image": "websummoner/chrome:152.0.7977.64",  "port": "4444" } } },
  "firefox": { "default": "155.0.0",
               "versions": { "155.0.0": { "image": "websummoner/firefox:155.0.0", "port": "4444" } } }
}

Known limitations

Chrome, Firefox, Edge, Brave and Yandex pass the whole container test suite. Two engines do not, for reasons outside WebSummoner’s control.

Opera

Opera is supported on a best-effort basis. Opera’s own driver, operachromiumdriver, lags the Chromium version Opera ships — Opera 135 is Chromium 151, while the newest published operadriver targets Chromium 150 — so the image drives Opera with the matching Chrome-for-Testing ChromeDriver instead. This is the approach the Selenium project itself recommends after it removed Opera support in Selenium 4.3.0.

What this costs you: opening a second window (window.open) can crash the renderer, so window-switching and WebDriver.close() are unreliable. Everything else in the suite passes.

If your tests depend on multi-window behaviour, use a Chromium-based browser.

WebKit (Safari)

The safari image is WebKitGTK — the same engine as Safari, built for Linux — driven by WebKitWebDriver. It is the closest you can get to Safari without Apple hardware, but WebKitWebDriver is less complete than the Chromium and Gecko drivers. File upload works — WebSummoner copies uploaded files directly into the browser container. addCookie works provided the cookie sets sameSite (Chromium and Gecko default it; WebKit drops the cookie without it), and the proxy capability works because WebSummoner translates it into the environment GLib’s proxy resolver reads — WebKit itself ignores the capability. Remaining known gaps:

Area Behaviour
Proxy the proxy capability is ignored, so traffic bypasses the proxy
Frames and windows switching frames can raise StaleElementReferenceException

WebKitGTK is also sensitive to host load: run it on an otherwise idle grid for stable results.

Custom images

The images repository contains the Dockerfiles and the public images build tool for producing custom browser images. Audio, video recording, VNC, clipboard and file exchange work out of the box in the official images — and in any image built from these Dockerfiles.