All apps · 0 apps
scanopy-daemon
OfficialDocker app from Fallen94's Repository
Overview
Readme
View on GitHubScanopy
Network documentation, without the drawing.
Scanopy replaces manual network diagrams with a continuously maintained model of what's actually running. A single daemon scans on a schedule and produces four views from each scan: L2 (physical), L3 (logical), workloads, and applications. Unlike diagrams drawn in draw.io that go stale the week they're saved, or IaC state that misses drift and resources provisioned outside the pipeline, Scanopy reflects the current state of your infrastructure. Export as SVG, Mermaid, or Confluence; embed live maps; or feed the model into your existing source of truth.
💡 Prefer not to self-host? Get a free trial of Scanopy Cloud
L2 (Physical) |
L3 (Logical) |
Workloads |
Applications |
✨ Features
- Automatic discovery: Maps hosts and services by scanning the network. One scanner, no per-device agents.
- 230+ service definitions: Auto-detects databases, web servers, containers, network infrastructure, and enterprise applications.
- Four views from one scan: L2 (physical), L3 (logical), workloads, and application dependencies.
- Distributed scanning: Deploy daemons across segments to map multi-site and multi-VLAN topologies.
- Docker & SNMP integration: Native discovery for containerized services and network hardware.
- Scheduled rescans: Documentation stays current as infrastructure changes.
- Multi-user + RBAC: Organization management, role-based access, and shareable live views for teammates or external stakeholders.
🎯 Perfect For
- Platform & DevOps teams: Trace service dependencies without APM. Map containers, VMs, and hardware in one model.
- Network engineers: Multi-VLAN, multi-site topology diagrams derived from SNMP, LLDP, and ARP. No manual drawing.
- IT operations: Keep inventory, topology, and dependencies current across teams and sites.
- MSPs: Per-client documentation with shareable live views.
- Home labs: Document your infrastructure without opening draw.io.
📋 Licensing
Self-hosted (AGPL-3.0): Free for all use. Requires source disclosure for network services and copyleft compliance.
Self-hosted (Commercial license): For those who cannot comply with AGPL-3.0 terms. Contact licensing@scanopy.net
Hosted Solution: Scanopy Cloud subscription for zero infrastructure management
🚀 Quick Start for Self Hosting
Docker Compose
curl -O https://raw.githubusercontent.com/scanopy/scanopy/refs/heads/main/docker-compose.yml
docker compose up -d
Proxmox
Use this helper script to create a Scanopy LXC.
Unraid
Available as an Unraid community app.
💡 Prefer not to self-host? Get a free trial of Scanopy Cloud
Access the UI at http://<your-server-ip>:60072, create your account, and wait for the first discovery to complete.
For detailed setup options and configuration, see the Installation Guide.
📚 Documentation + API
🚀 Demo
demo.scanopy.net. Hosted demo app with a sample dataset. Try the full UI without installing anything.
🤝 Contributing
We welcome contributions! See our contributing guide for details.
Great first contributions:
- Adding service definitions
- Translating Scanopy into your language
💬 Community & Support
- Discord: Join our Discord for help and discussions
- Issues: Report bugs or request features
- Discussions: GitHub Discussions
Translations powered by Weblate
Built with ❤️ in NYC
Install scanopy-daemon on Unraid in a few clicks.
Find scanopy-daemon in Community Apps on your Unraid server, review the template, and click Install. Unraid handles the Docker app or plugin setup from the published template.
Categories
Related apps
Explore more like this
Explore allDetails
ghcr.io/scanopy/scanopy/daemon:latestRuntime arguments
- Network
host- Privileged
- true
Template configuration
- Target
- /root/.config/daemon
- Value
- /mnt/user/appdata/scanopy/daemon
- Target
- /var/run/docker.sock
- Value
- /var/run/docker.sock
Or use a domain name if behind reverse proxy
- Target
- SCANOPY_SERVER_URL
- Value
- http://YOUR_SCANOPY_SERVER_IP:60072
Pull: daemon polls server. Push: server initiates scans (daemon must be reachable)
- Target
- SCANOPY_MODE
- Value
- Push
Get from scanopy-server > Daemons > Create Daemon > Generate > SCANOPY_DAEMON_API_KEY
- Target
- SCANOPY_DAEMON_API_KEY
UUID of the network to scan. Get from scanopy-server > Daemons > Create Daemon > Generate > SCANOPY_NETWORK_ID
- Target
- SCANOPY_NETWORK_ID
- Value
- 1881e7fa-b4b4-4227-be49-265c98f87b88
Public URL where server can reach daemon (Push mode only)
- Target
- SCANOPY_DAEMON_URL
- Value
- http://10.100.20.250:60073
Port for daemon to listen on
- Target
- SCANOPY_DAEMON_PORT
- Value
- 60073
- Target
- SCANOPY_BIND_ADDRESS
- Value
- 0.0.0.0
Name displayed under scanopy-server > Daemons
- Target
- SCANOPY_NAME
- Value
- UNRAID
- Target
- SCANOPY_LOG_LEVEL
- Value
- info
Maximum parallel host scans
- Target
- SCANOPY_CONCURRENT_SCANS
- Value
- 15
Seconds between heartbeats/work requests
- Target
- SCANOPY_HEARTBEAT_INTERVAL
- Value
- 30