Seven current browsers in Docker, one container per session, recordings with sound. Discover how WebSummoner continues Selenoid, archived since December 2024 — and why it runs at the core of our own hosting infrastructure.
Open source does not end with a repository
Archiving a repository ends its maintenance, not its life. Selenoid is released under the Apache 2.0 licence, which gives everyone who uses it the permanent right to modify and redistribute it: when a project’s authors move on, the code stays available and a new maintainer can carry it forward. Aerokube built Selenoid and carried it for eight years; archiving it was their decision to make, and the credit for what Selenoid got right stays theirs. WebSummoner is that continuation. It starts from the last Selenoid commit, keeps the design that made it good, and carries its own name, organisation, images and domain. We were already running Selenoid in production at RIADVICE, and continuing it was the sound decision, for us and for everyone else who depends on it.WebSummoner 1.0.0 is out: a fast Selenium hub that summons a fleet of browsers into Docker containers as ephemeral, session-scoped environments.
Why we forked Selenoid instead of replacing it
We forked it for two reasons.What is new in 1.0.0
Seven browsers, all current
| Browser | Version |
|---|---|
| Chrome | 152 |
| Firefox | 155 |
| Edge | 152 |
| Opera back | 135 |
| Brave new | 1.94 |
| Yandex | 26.6 |
| Safari (WebKitGTK) new | 2.52.6 |
Brave joins the line
Brave is published for the first time: Selenoid never shipped it, and it now stands alongside the six others as a first-class image. Brave numbers its releases on its own scale, so the build tool reads the Chromium version embedded in each release and pairs it with the matching driver automatically. If your users browse with Brave, you can test on it exactly as you test on Chrome: the same capabilities, the same live screen, the same recordings, and the same suite passed the same way.
Opera works again
Selenium dropped Opera support in 4.3.0, and the workaround everyone repeats, driving Opera with a Chrome-for-Testing chromedriver, starts sessions fine and then crashes the renderer whenever a page opens a window. The fix was reading the error message properly: OperaDriver’s version check is a warning, not a refusal. Opera’s own driver drives it correctly, and the hub asks it for the modern protocol on your behalf.
Safari is a first-class target
Safari is published for the first time too. The image is WebKitGTK, the same engine Safari ships, built from source: Selenoid carried the build files but never released an image, so this is the first one you can pull. Two things that never worked with it, file upload and the proxy capability, are now handled by the hub itself, so the fix applies to any image, old or new. The two remaining quirks each need one line in your tests, and the documentation says which.
Recordings with sound, on every browser
Session recordings now capture audio reliably on all seven browsers, so a failing media or WebRTC test is no longer a silent video. If you do not want sound, one capability turns it off.
Built for operations
A Prometheus /metrics endpoint, health probes that answer HEAD requests, a proper 429 when the queue is full, file upload that works on every image, signed release images with a software bill of materials, and a security policy that states plainly what the Docker socket means.
A rebuilt UI
WebSummoner UI, the live view of your grid with the browser screen, the logs and the queue, was rebuilt from the ground up: a considered dark theme, official browser logos, live session and queue statistics, and honest connection reporting. Existing command lines and Compose files need no change.
A modern toolchain
Go 1.27, Java 25 for the test suite, React 19 for the UI, Ubuntu 26.04 for the browser images, dependency updates and vulnerability checks in CI, and a searchable documentation site. Building any part of the project needs Docker and nothing else. The load balancer for multi-hub clusters and the one-command installer moved forward with the hub.
If you are choosing today
There is no perfect substitute for what Selenoid did, but there are honest fits.Migrating from Selenoid
Point your clients at the new hub.selenoid:options, the X-Selenoid-* headers, the /aerokube/... path, cm selenoid start and the UI’s --selenoid-uri flag all still work, and they will keep working.
The one change: inside the Docker image the configuration moved from /etc/selenoid to /etc/websummoner. Update that mount, and you are done.
What we commit to
- Compatibility, permanently. The Selenoid capability names, headers, paths and commands are accepted for good, not deprecated with a timer. A migration that costs a sprint is not a migration anyone does.
- Current browsers. Images follow each vendor’s stable releases, each with the driver that matches it, and no image is tagged before it passes the suite.
- Security kept up. Dependencies are updated weekly, every build runs a vulnerability check, and the hub image is signed and ships with a software bill of materials.
- Production first. We run WebSummoner ourselves. What ships is what we depend on.
- Documentation that says what does not work. The complete notes, limitations included, are in the announcement.
Available now
websummoner \
-p 4444:4444 \
-v $PWD/browsers.json:/etc/websummoner/browsers.json:ro \
-v /var/run/docker.sock:/var/run/docker.sock \
websummoner/websummoner:latest</code></pre>
http://localhost:4444/wd/hub. The complete release notes, the migration guide and the conversation are all one click away:
Summon a fleet of browsers into Docker containers.
A fast Selenium hub with ephemeral, session-scoped environments.
Need help running WebSummoner in your organisation?
Contact usWebSummoner is developed and maintained by RIADVICE under Apache-2.0. It builds on Selenoid by Aerokube and Ivan Krutov, and on the original UI by Kirill Merkushev.
