1. Images & Charts
  2. livekit-egress
livekit-egress

livekit-egress

Apps
Updated 12 hours ago

LiveKit Egress Overview

Secure your stack with a hardened LiveKit Egress image freshly-built by Minimus. Minimus images always include the most up-to-date package version for all packages and dependencies contained in the image.


LiveKit Egress adds recording and live broadcasting to a video app without writing custom capture or transcoding code. It can save a room, screen share, or individual track as an MP4 or HLS file, upload the recording to S3, GCS, or Azure, or stream it live to platforms like YouTube and Twitch.


Try It Out

Step 1: Start Redis

LiveKit server and Egress communicate through Redis — the server queues export requests there for Egress to pick up — so Egress needs the same Redis instance and address your LiveKit server is configured with.

If you have a Redis instance to work with, skip this step and use its address in the config below. Otherwise, start one for testing on a shared Docker network so the Egress container can reach it by name:

docker network create livekit-net
docker run --rm -d --name redis --network livekit-net reg.mini.dev/redis

Step 2: Run LiveKit Egress

Egress reads its settings from a config file. At minimum, config.yaml needs the same API key and secret configured on your LiveKit server (the LIVEKIT_KEYS pair it authenticates with) and the Redis address:

api_key: your-LiveKit-api-key
api_secret: your-LiveKit-api-secret
ws_url: ws://localhost:7880
redis:
  address: redis:6379

Take the Minimus LiveKit Egress image for a test run on the same Docker network as Redis:

docker run --rm \
  --network livekit-net \
  --cap-add SYS_ADMIN \
  -e EGRESS_CONFIG_FILE=/out/config.yaml \
  -v ~/livekit-egress:/out \
reg.mini.dev/livekit-egress

The flag --cap-add SYS_ADMIN is required for Chrome's sandboxing when capturing web-based room composites and screen shares.


Technical Considerations

The LiveKit Egress image provided by Minimus is a slim, security-hardened alternative to the public image. The images are largely interchangeable, with a few differences as noted below.

LiveKit Egress built by Minimus:

  1. Runs as non-root by default for a security-first approach that protects against privilege escalation attacks.
  2. No ports are exposed by default. You'll need to explicitly expose any ports you configure (such as template_port, health_port, or prometheus_port).
  3. Drill down on the version specification tab to see the default user, listening ports, entrypoint, volumes, environment variables, etc.

The Payoff

A hardened, minimal image that will remain more secure for the long run and accrue vulnerabilities at a slower rate.


Terms & Info

Trademark

This catalog is published by Minimus. All product names, logos, and marks, other than those belonging to Minimus, shown are owned by their respective rights holders and appear here only to identify the open source software each image contains. Minimus claims no ownership of those marks and implies no affiliation with, endorsement by, certification by, or sponsorship by any rights holder.

Disclaimer

Images are provided "as-is" without warranty of any kind. "Hardened" refers to the security configuration applied at the time of build and does not constitute a guarantee of ongoing security or absence of vulnerabilities. The free tier is provided without support, SLA, or guaranteed patching timelines. Security updates may be applied to paid subscriptions before or instead of free tier images. By pulling or using any image you agree to our Terms of Use.