Noureddine RAMDI / NetAlertX: Containerized network asset discovery and alerting platform

Created Sat, 23 May 2026 20:41:14 +0000 Modified Sat, 23 May 2026 20:41:27 +0000

jokob-sk/NetAlertX

NetAlertX is a self-hosted network monitoring platform designed to continuously discover and track assets on your network, detect state changes, and manage IP address drift. It combines multiple scanning methods and integrates with a wide array of notification services, making it a practical choice for network administrators and homelab enthusiasts who want to maintain visibility and control over their local network environment.

What NetAlertX does: continuous network asset discovery and alerting

At its core, NetAlertX is a Python-based backend platform that focuses on network asset intelligence through continuous monitoring. It tracks unauthorized device discovery, connection state changes, and IP address management (IPAM) drift. The platform supports a variety of scanning and discovery methods, including arp-scan, importing data from Pi-hole’s database and DHCP leases, generic DHCP leases imports, UniFi controller imports, and SNMP-enabled router imports.

This diverse set of discovery methods enhances the platform’s ability to map devices accurately across different types of networks and setups. NetAlertX can ingest data through plugins, a flexible system that lets you extend discovery capabilities or integrate with additional data sources.

Notification and alerting are central to the platform’s value proposition. It supports over 80 notification gateways, including popular services such as Telegram (via Apprise), Pushsafer, Pushover, and NTFY. This extensive support allows users to receive alerts through their preferred notification channels, facilitating timely responses to network changes or security events.

Integration with other tools is well thought out. NetAlertX can feed device state changes and data into Home Assistant, a popular home automation platform. It also exposes API endpoints and supports webhooks for custom automation workflows, making it adaptable to various user environments.

Architecture and design strengths: plugin extensibility and Docker-based deployment

The architecture of NetAlertX is centered around modularity and extensibility. The plugin system is a key component, enabling users to create custom scanners or importers quickly — reportedly in as little as 15 minutes. This design supports a flexible network monitoring strategy that can evolve with user needs or integrate new discovery technologies without core platform modifications.

Using Docker as the primary deployment method simplifies setup and updates. The Docker image is pre-built and available on GitHub Container Registry, allowing users to run NetAlertX with a single docker run command or through docker compose for source-based deployments. The Docker configuration includes volume mounts for persistent data (configuration and database) and environment variables to customize ports and application behavior.

The platform’s use of host networking in Docker ensures it can scan and monitor the host network environment directly, which is critical for network discovery tools. The tmpfs mount for temporary files with specific user and group IDs also highlights attention to runtime security and filesystem hygiene.

The tradeoff of using Docker is that while it offers reproducibility and ease of deployment, it may not fit every environment, especially those with strict container policies or limited Docker expertise. However, for homelab users and network admins familiar with containerization, this is a pragmatic choice.

The codebase is primarily Python, which is common for network and automation tools, providing a good balance between rapid development and readability. The documentation and plugin ecosystem hint at a developer-friendly environment, encouraging contributions and custom extensions.

Quick start: running NetAlertX with Docker

Starting NetAlertX is straightforward thanks to the provided Docker images and compose files. The README warns about recent changes in the docker-compose setup and points users to a migration guide for those upgrading.

Here’s the exact command from the README to run NetAlertX in a container:

docker run -d \
  --network=host \
  --restart unless-stopped \
  -v /local_data_dir:/data \
  -v /etc/localtime:/etc/localtime:ro \
  --tmpfs /tmp:uid=20211,gid=20211,mode=1700 \
  -e PORT=20211 \
  -e APP_CONF_OVERRIDE='{"GRAPHQL_PORT":"20214"}' \
  ghcr.io/netalertx/netalertx:latest

Note that /local_data_dir must contain config and db folders for NetAlertX to persist configuration and database files.

Alternatively, you can clone the source repository and deploy it using Docker Compose:

git clone https://github.com/netalertx/NetAlertX.git
cd NetAlertX
docker compose up --force-recreate --build

# To customize: edit docker-compose.yaml and rerun the last command

This approach is great for users who want to track the latest code or modify the Docker setup.

For users integrating with Home Assistant, specific instructions and plugins are available to streamline the connection.

Verdict: a practical network monitoring platform for homelabs and SMBs

NetAlertX offers a solid, containerized solution for continuous network asset discovery and alerting. Its plugin system and broad notification support make it extensible and adaptable to various network environments.

The reliance on Docker for deployment is a double-edged sword: it simplifies running and updating the system but requires Docker familiarity. The platform is particularly relevant for homelab enthusiasts, small to medium businesses, and network administrators looking for an open-source tool that integrates well with automation platforms like Home Assistant.

For users needing a turnkey SaaS alternative or deeper enterprise-grade features, this might require additional customization or integration. However, for its target audience, NetAlertX balances ease of use, flexibility, and network visibility effectively.


→ GitHub Repo: jokob-sk/NetAlertX ⭐ 6,484 · Python