Up and Running in 60 Seconds
One docker-compose.yml, one web UI flow: Docker in, then finish setup in your browser.
Preparation
Before you start
Have Docker, a reachable Channels DVR server, and at least one notification destination ready before you paste the compose file.
Docker Engine 24+
Docker Engine with the Compose plugin (docker compose). Works on Linux,
macOS, and Windows WSL2.
Channels DVR server
A running Channels DVR server reachable from the machine you deploy ChannelWatch on.
Notification provider
At least one notification service — Pushover, Discord, Telegram, Slack, Email, Gotify, Matrix, or any Apprise-compatible endpoint.
Install flow
Three steps to your first alert
The setup stays simple: paste the compose file, start the container, then finish the DVR connection in the web UI.
-
Create your compose file
Create a
docker-compose.ymlin a new directory and paste the snippet below. Replace/your/local/pathwith the absolute path where ChannelWatch should store its config, and setTZto your timezone (IANA format, e.g.America/ChicagoorEurope/London).name: ChannelWatch services: channelwatch: image: coderluii/channelwatch:latest container_name: channelwatch init: true network_mode: host volumes: - /your/local/path:/config environment: TZ: "America/New_York" restart: unless-stoppedAll DVR connection settings are configured through the web UI after first launch. For headless or automated installs, use the documented 1-based `CW_DVR_1_*`, `CW_DVR_2_*`, and so on env vars or `dvrs.yaml` instead.
-
Start the container
From the directory containing your
docker-compose.yml:docker compose up -dChannelWatch will pull the latest image, create the container, and start in the background. Check the logs any time with
docker logs -f channelwatch. -
Open the web UI and add your DVRs
Navigate to
Configuration docshttp://your-server-ip:8501in a browser. The first-run wizard will guide you through connecting your Channels DVR server and choosing your notification providers.
Scale
Multi-DVR ready out of the box
One install can monitor more than one Channels DVR server without changing the basic setup flow.
After install
Now what?
Once the container is running, these are the next places most people need immediately.
Migration
Already running ChannelWatch?
Existing installs keep their upgrade path, but the compose file should drop legacy DVR host and port variables first.
Alternative deploy
Running Kubernetes?
Docker Compose is still the primary path, but the Helm chart stays available when your environment already runs on Kubernetes.
Helm chart path
ChannelWatch includes a source-managed Helm chart for Kubernetes deployments. Use it as a self-managed chart path with liveness, readiness, and startup probes already wired for the current health endpoints. Single-replica only in v1.0.
Kubernetes + Helm install guideNext step
Questions? The community has answers.
Join the ChannelWatch community on GitHub Discussions or Discord, report issues, or support ongoing development. Built by a Channels DVR user, for Channels DVR users.