NetProbe

NetProbe

Docker-Anwendung from bmartino1's Repository

Übersicht

Netprobe 2.0 – Internet Quality Dashboard

Netprobe 2.0 is a lightweight, container-friendly network probe and web UI for home/lab internet monitoring.

It periodically:

Pings your gateway, router, and a list of “anchor” sites.
Measures packet loss, latency, and jitter.
Measures DNS lookup latency per DNS server.
Runs scheduled and manual Speedtest.net tests.
Stores everything in SQLite and renders a dark-mode dashboard with Chart.js.
The goal is a simple “drop in and forget it” quality monitor that you can run on Unraid, Proxmox, Docker, etc.

Additional variables can be found here: https://github.com/bmartino1/NetProbe_Python

Optional data:
ALL are OPTIONAL! Defaults/fallbacks to SQLite.

Optional: if ping needs extra caps in your environment

--cap-add=NET_RAW --cap-add=NET_ADMIN --cap-add=SYS_ADMIN

Use standalone Postgres for backend storage docker variables...

(May be hidden in template)
USE_POSTGRES: ${USE_POSTGRES:-true}
DB_ENGINE: ${DB_ENGINE:-postgres}

Postgres connection details (match the Postgres service above via env file...)

POSTGRES_HOST: ${POSTGRES_HOST:-postgres}
POSTGRES_PORT: ${POSTGRES_PORT:-5432}
POSTGRES_DB: ${POSTGRES_DB:-netprobe}
POSTGRES_USER: ${POSTGRES_USER:-netprobe}
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-netprobe}

Anforderungen

ALL are OPTIONAL! Defaults/fallbacks to SQLite

# Optional: if ping needs extra caps in your environment
--cap-add=NET_RAW --cap-add=NET_ADMIN --cap-add=SYS_ADMIN


# Use standalone Postgres for backend storage docker variables...

USE_POSTGRES: ${USE_POSTGRES:-true}
DB_ENGINE: ${DB_ENGINE:-postgres}
    
# Postgres connection details (match the Postgres service above via env file...)

POSTGRES_HOST: ${POSTGRES_HOST:-postgres}
POSTGRES_PORT: ${POSTGRES_PORT:-5432}
POSTGRES_DB: ${POSTGRES_DB:-netprobe}
POSTGRES_USER: ${POSTGRES_USER:-netprobe}
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-netprobe}

Laufzeit-Argumente

Web-UI
http://[IP]:[PORT:8080]
Netzwerk
bridge
Shell
bash
Privilegiert
false

Konfiguration der Vorlage

DockerNatPortPorttcp
Ziel
8080
Standard
8080
Wert
8080
Database pathPathrw

Container /data location for SQLite file that holds long-term data. Container path can be changed if DB_PATH variable is assigned. DB_PATH defaults to /data/netprobe.sqlite

Ziel
/data/
Standard
/mnt/user/appdata/netprobe_database
Wert
/mnt/user/appdata/netprobe_database
PROBE_INTERVALVariable

Seconds between script probe runs. (Countdown in web page.) This runs the pings, DNS lookups, and others to collect data...

Standard
30
Wert
30
PING_COUNTVariable

ICMP packets per target per probe.

Standard
20
Wert
4
APP_TIMEZONEVariable

Time zone, e.g. America/Chicago

Standard
UTC
Wert
UTC
SITESVariable

Comma-separated ping targets.

Standard
fast.com,google.com,youtube.com
Wert
fast.com,google.com,youtube.com
ROUTER_IPVariable

Optional LAN router IP. Your router/gateway IP address to help with pings. Can leave blank (to leave blank, delete this variable).

Standard
192.168.1.1
Wert
192.168.1.1
DNS_TEST_SITEVariable

Domain for DNS latency tests.

Standard
google.com
Wert
google.com
DNS_NAMESERVER_4Variable

Web UI display name

Standard
My_DNS_Server
Wert
My_DNS_Server
DNS_NAMESERVER_4_IPVariable

DNS IPs to probe. Do you run a custom DNS server? Set this to that IP.

Standard
192.168.1.1
Wert
192.168.1.1
SPEEDTEST_ENABLEDVariable

Enable periodic speed tests at SPEEDTEST_INTERVAL in seconds.

Standard
True
Wert
True
SPEEDTEST_INTERVALVariable

14400 seconds = 4 hours. Seconds between automatic speed tests.

Standard
14400
Wert
14400
DNS_NAMESERVER_1Variable

Google_DNS

Standard
Google_DNS
Wert
Google_DNS
DNS_NAMESERVER_1_IPVariable

Google_DNS 8.8.8.8

Standard
8.8.8.8
Wert
8.8.8.8
DNS_NAMESERVER_2Variable

Quad9_DNS

Standard
Quad9_DNS
Wert
Quad9_DNS
DNS_NAMESERVER_2_IPVariable

Quad9_DNS 9.9.9.9

Standard
9.9.9.9
Wert
9.9.9.9
DNS_NAMESERVER_3Variable

CloudFlare_DNS

Standard
CloudFlare_DNS
Wert
CloudFlare_DNS
DNS_NAMESERVER_3_IPVariable

CloudFlare_DNS 1.1.1.1

Standard
1.1.1.1
Wert
1.1.1.1
USE_POSTGRESVariable

Requires DB_ENGINE set to postgres Use a standalone Postgres and set the required Postgres Docker variables manually.

Standard
true
Wert
false
DB_ENGINEVariable

Choose database backend. If using Postgres, set USE_POSTGRES to true as well.

Standard
postgres
Wert
sqlite
WEIGHT_LOSSVariable

Weight of packet loss in score (0–1, sum = 1).

Standard
-0.6
Wert
-0.6
WEIGHT_LATENCYVariable

Weight of latency.

Standard
0.15
Wert
0.15
WEIGHT_JITTERVariable

Weight of jitter.

Standard
0.2
Wert
0.2
WEIGHT_DNS_LATENCYVariable

Weight of DNS latency.

Standard
0.05
Wert
0.05
THRESHOLD_LOSSVariable

Loss % considered “max bad” for scoring.

Standard
5
Wert
5
THRESHOLD_LATENCYVariable

Latency ms considered “max bad”.

Standard
100
Wert
100
THRESHOLD_JITTERVariable

Jitter ms considered “max bad”.

Standard
30
Wert
30
THRESHOLD_DNS_LATENCYVariable

DNS ms considered “max bad”.

Standard
100
Wert
100
WEB_PORTVariable

This sets the Python web server port. If edited, update Docker NAT ports and WebUI URL.

Standard
8080
Wert
8080
TailScale Fallback State DirectoryVariable{3}

Fallback container directory for Tailscale state information - Added by Community Applications

Ziel
CA_TS_FALLBACK_DIR
Standard
/data/
Wert
/data/

Statistik herunterladen

3,666
Downloads insgesamt

Einzelheiten

Repository
bmmbmm01/netprobe:latest
Zuletzt aktualisiert2026-04-08
Erstmals gesehen2025-12-01

Führen Sie NetProbe auf Unraid aus.

NetProbe ist gelistet in Community Apps für Unraid OS. Erkunden Sie Unraid, um einen flexiblen Heimserver, ein NAS oder ein Heimlabor aufzubauen.