Installing WarDragon Analytics
WarDragon Analytics runs on its own server or workstation, not on a kit. It collects detections and unit health from one or more kits and shows them on a shared map and dashboards. This article covers what the server needs, how to install it, and how to keep it running. For what Analytics is and where it fits, see WarDragon Analytics: what it is and where it runs.
What the server needs
| Item | Requirement |
|---|---|
| Software | Docker and Docker Compose |
| Memory | 2 GB minimum; 4 GB recommended when collecting from several kits |
| Disk | About 50 GB holds 30 days of data from 5 kits |
| Network | The server must be able to reach port 8088 on each kit |
Critical Do not expose the Analytics web interface, dashboards, or the kits’ API to the public internet. Reach them over your own network or a VPN.
Install
On the server, download Analytics and run its setup script:
git clone https://github.com/alphafox02/WarDragonAnalytics.git
cd WarDragonAnalytics
./quickstart.sh
The script generates passwords, starts the services, sets up the database, and loads the prebuilt dashboards. It prints the dashboard login when it finishes; note it down.
Important Always start a new installation with ./quickstart.sh, not docker compose up. Starting it directly skips the database setup, and the dashboards come up empty.
Open it
| Interface | Address | Use it for |
|---|---|---|
| Web map | http://<server>:8090 | Live map, adding kits, CSV export |
| Dashboards | http://<server>:3000 | History, patterns, and kit health. Username admin; the password is in the setup script’s output. |
Next, add your kits; see Adding a kit to WarDragon Analytics. For what each view shows, see Reading the WarDragon Analytics map and dashboards.
Optional features
All of these are off by default and are turned on in the .env file the setup script creates. The Analytics documentation ↗ covers each setting.
- Login for the web map. Password protection for the interface on port 8090.
- Alerts. Notifications to Slack, Discord, or any service that accepts a webhook.
- Audit log. A record of administrative actions such as adding kits, exports, and logins.
- Scheduled backups. Automatic database backups, kept for a set period.
- MQTT intake. Kits push detections to the server instead of being polled, which suits kits behind NAT or a firewall.
Day-to-day commands
Run these from the WarDragonAnalytics folder on the server.
| Task | Command |
|---|---|
| Start | docker compose up -d |
| Stop | docker compose down |
| Check health | ./healthcheck.sh |
| Watch the collector log | docker compose logs -f collector |
| Restart after a settings change | docker compose restart collector |
| Back up the database | docker exec wardragon-timescaledb pg_dump -U wardragon wardragon > backup.sql |
Critical docker compose down -v deletes all stored data. Use plain docker compose down to stop the services.
If it doesn’t start
| Symptom | Check |
|---|---|
| Containers won’t start | Another program may be using port 8090 or 3000: sudo lsof -i :8090 -i :3000 |
| Dashboards are empty after install | The database setup was skipped. Run ./quickstart.sh again; it does not delete data. |
| A kit never appears | See Adding a kit to WarDragon Analytics |
Related
WarDragon is manufactured by Millenium Products Inc. Technical support for purchased kits is requested through the support page. Purchasing and quote requests go through the contact form.
