Install with Docker Compose
One docker-compose.yml starts the container, then the first-run wizard walks you through DVR and notification setup.
Before you start
Have Docker and a reachable Channels DVR server ready. Choose a notification provider if you want alerts.
Docker with Compose
Docker Engine with the Compose plugin (docker compose). The example below uses Linux host networking. On macOS or Windows Docker Desktop, enable host networking or use the bridge-network example.
Channels DVR server
A running Channels DVR server reachable from the machine you deploy ChannelWatch on.
Notification provider
For alerts, connect a notification service: Pushover, Discord, Telegram, Slack, Email, Gotify, Matrix, or any Apprise-compatible endpoint.
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 `CHANNELS_DVR_SERVERS` or a carefully managed `/config/settings.json` file 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.
Multi-DVR ready out of the box
One install can monitor more than one Channels DVR server without changing the basic setup flow.
Now what?
Once the container is running, these are the next places most people need immediately.
Already running ChannelWatch?
Existing installs keep their upgrade path, but the compose file should drop legacy DVR host and port variables first.
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.5.3.
Kubernetes + Helm install guideQuestions? 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.