Galène videoconference SFU: multi-arch, distroless. For real meetings run with --network host.
482
Galène is a videoconference server: light, self-hosted, no
account needed. This image is built from source
(github.com/jech/galene), multi-architecture
(linux/amd64 and linux/arm64), and runs as a non-root distroless container.
If several people on different devices need to see each other, run the image with
--network host:docker run -d --network host valentt/galeneWith a plain
-p 8443:8443the page loads and you can join a room, but everyone sees only their own camera and no video is exchanged. Galène is an SFU: the media travels over separate UDP ports, and inside a bridge-network container the server advertises its internal address (172.17.x) which no other device can reach. Host networking makes it advertise the host's real LAN address, so the media flows. This is the setup the Galène author recommends for Docker.Host networking is a Linux feature; on Docker Desktop for macOS and Windows it maps to the internal VM, so use it on a Linux host or server.
docker run -p 8443:8443 valentt/galene
Open https://localhost:8443/, accept the self-signed certificate warning, and
join the bundled Galène demo group by typing any name. Galène serves over
HTTPS only, so http:// will not work. This is fine for a solo look on a single
machine; for an actual meeting between devices, use host networking as above.
Docker Desktop runs the engine inside a virtual machine, so a container's port
reaches the host only once it is published. The -p 8443:8443 above does that.
If you start the image from the Desktop graphical interface instead, the quick
Run does not publish anything: expand Optional settings, set Host
port to 8443, and run. This is how Docker works for every image, not
something specific to Galène.
A common setup terminates TLS in a reverse proxy (Caddy, nginx) and runs Galène
in plain HTTP behind it (-insecure -http :8444). Tell the built-in TURN server
its public address and pin the media to a known range:
docker run -d --network host valentt/galene \
-insecure -http :8444 -turn 203.0.113.5:3479 -udp-range 40000-40050
The proxy carries only the web interface and signalling, which are TCP. The media
is UDP straight to the host, so open the TURN port and the media range in the
firewall. This is the step that is easy to miss: a firewall that ends in a
default DROP still passes the proxy's TCP, so the page loads and rooms join, but
the UDP media is dropped and everyone sees only their own camera. The server's own
relay test only checks locally; to confirm the port is reachable from outside,
send a STUN binding request to it (see docs/DOCKER.md). The bundled
docker-compose.yml wires the same flags from a .env file.
For groups, certificates and tokens that survive restarts, mount volumes and
create groups with galenectl. See
galene.md for full
administration instructions.
Galène is written by Juliusz Chroboczek. This is an unofficial build, published for testing and convenience.
Content type
Image
Digest
sha256:96928e752…
Size
8.4 MB
Last updated
3 months ago
docker pull valentt/galene