-
-
Notifications
You must be signed in to change notification settings - Fork 18
Example Compose Stacks
Ready-made docker-compose.yml examples for common setups. Copy the one that fits your needs and adjust as needed.
All examples use named volumes so your data survives container recreation. See Configuration for all available environment variables.
DOCSight only. The simplest setup.
services:
docsight:
image: ghcr.io/itsdnns/docsight:latest
container_name: docsight
restart: unless-stopped
ports:
- "8765:8765"
volumes:
- docsight_data:/data
environment:
- TZ=Europe/Berlin
volumes:
docsight_data:DOCSight + Speedtest Tracker for automated speed test history.
services:
docsight:
image: ghcr.io/itsdnns/docsight:latest
container_name: docsight
restart: unless-stopped
ports:
- "8765:8765"
volumes:
- docsight_data:/data
environment:
- TZ=Europe/Berlin
- SPEEDTEST_TRACKER_URL=http://speedtest:80
# Set SPEEDTEST_TRACKER_TOKEN via .env or DOCSight Settings UI
speedtest:
image: lscr.io/linuxserver/speedtest-tracker:latest
container_name: speedtest
restart: unless-stopped
ports:
- "8999:80"
volumes:
- speedtest_data:/config
environment:
- TZ=Europe/Berlin
- DB_CONNECTION=sqlite
- APP_KEY= # generate with: docker run --rm lscr.io/linuxserver/speedtest-tracker generate-key
volumes:
docsight_data:
speedtest_data:After starting, open Speedtest Tracker at http://localhost:8999, create an API token under Settings, and enter it in DOCSight Settings. See the Speedtest Tracker Setup Guide for details.
DOCSight + Breitbandmessung sidecar for automated BNetzA measurements. The sidecar runs the official BNetzA Desktop App in a headless browser on a configurable schedule and writes results to a shared volume that DOCSight imports automatically.
services:
docsight:
image: ghcr.io/itsdnns/docsight:latest
container_name: docsight
restart: unless-stopped
ports:
- "8765:8765"
volumes:
- docsight_data:/data
- bnetz_data:/data/bnetz
environment:
- TZ=Europe/Berlin
- BNETZ_WATCH_ENABLED=true
- BNETZ_WATCH_DIR=/data/bnetz
breitbandmessung:
image: fabianbees/breitbandmessung:latest
container_name: breitbandmessung
restart: unless-stopped
ports:
- "5800:5800" # noVNC web UI for initial setup
volumes:
- bnetz_data:/config/xdg/config/Breitbandmessung
environment:
- TZ=Europe/Berlin
- TIME_START=13:00
- TIME_END=22:30
volumes:
docsight_data:
bnetz_data:After first start, open http://localhost:5800 to complete the Breitbandmessung app setup (accept terms, select your ISP and tariff). Measurements are imported into DOCSight automatically.
See BNetzA Breitbandmessung for details on the file watcher and CSV/PDF import.
DOCSight + Mosquitto MQTT broker for Home Assistant integration.
services:
docsight:
image: ghcr.io/itsdnns/docsight:latest
container_name: docsight
restart: unless-stopped
ports:
- "8765:8765"
volumes:
- docsight_data:/data
environment:
- TZ=Europe/Berlin
- MQTT_HOST=mosquitto
- MQTT_PORT=1883
# Set MQTT_USER / MQTT_PASSWORD if your broker requires auth
mosquitto:
image: eclipse-mosquitto:2
container_name: mosquitto
restart: unless-stopped
ports:
- "1883:1883"
volumes:
- mosquitto_data:/mosquitto/data
- mosquitto_config:/mosquitto/config
volumes:
docsight_data:
mosquitto_data:
mosquitto_config:If you already run an MQTT broker (e.g., via Home Assistant's Mosquitto add-on), skip the
mosquittoservice and pointMQTT_HOSTto your existing broker's IP address.
See Home Assistant Integration for sensor details and automation examples.
Everything together: DOCSight + Speedtest Tracker + BNetzA sidecar + community modules volume.
services:
docsight:
image: ghcr.io/itsdnns/docsight:latest
container_name: docsight
restart: unless-stopped
ports:
- "8765:8765"
volumes:
- docsight_data:/data
- bnetz_data:/data/bnetz
- ./modules:/modules # community modules (optional)
environment:
- TZ=Europe/Berlin
- BNETZ_WATCH_ENABLED=true
- BNETZ_WATCH_DIR=/data/bnetz
- SPEEDTEST_TRACKER_URL=http://speedtest:80
# Configure remaining secrets via DOCSight Settings UI or .env file
speedtest:
image: lscr.io/linuxserver/speedtest-tracker:latest
container_name: speedtest
restart: unless-stopped
ports:
- "8999:80"
volumes:
- speedtest_data:/config
environment:
- TZ=Europe/Berlin
- DB_CONNECTION=sqlite
- APP_KEY= # generate with: docker run --rm lscr.io/linuxserver/speedtest-tracker generate-key
breitbandmessung:
image: fabianbees/breitbandmessung:latest
container_name: breitbandmessung
restart: unless-stopped
ports:
- "5800:5800"
volumes:
- bnetz_data:/config/xdg/config/Breitbandmessung
environment:
- TZ=Europe/Berlin
- TIME_START=13:00
- TIME_END=22:30
volumes:
docsight_data:
speedtest_data:
bnetz_data:- Secrets: Prefer entering API tokens and passwords via the DOCSight Settings UI rather than environment variables. The UI encrypts them at rest.
-
Networking: Services in the same compose file can reach each other by service name (e.g.,
http://speedtest:80). Use the internal port, not the published host port. -
Community modules: Add
- ./modules:/modulesto the DOCSight volumes to enable community modules. - Smokeping / BQM: These are external services with their own Docker setups. Configure them in DOCSight Settings by entering their URLs. See Smokeping and BQM.
Home | Quick Start | Configuration | API Reference | GitHub
- Quick Start
- Installation
- Running without Docker
- Podman Quadlet
- Configuration
- Reverse Proxy
- Example Compose Stacks
- Dashboard
- Connection Monitor
- Signal Trends
- Before/After Comparison
- Channel Timeline & Compare
- Event Log
- Smart Capture
- Gaming Quality Index
- Modulation Performance
- Cable Segment Utilization
- In-App Glossary
- Speedtest Tracker
- BNetzA Breitbandmessung
- ThinkBroadband BQM
- Smokeping
- Weather
- Netzbremse (Peering)
- Home Assistant (MQTT)
- Prometheus Metrics