Skip to content

Self-Hosting Overview

A self-hosted instance is a small Docker Compose stack you run on your own infrastructure. It phones home to the GridNMS platform over a single outbound HTTPS connection for licensing, global notices, and software updates. No inbound connections to GridNMS are required.

ServicePurposePorts
serverWeb UI + API plus the cloud connector (licensing, updates). The server bakes the client SPA and serves it — there is no separate web container.UI+API (default 3001), 514/udp syslog, 162/udp trap
postgresTimescaleDB / PostgreSQL 16internal
memgraphTopology graphinternal
collectorThe sensor: ICMP / SNMP / SSH polling, syslog, trapsinternal
updaterPulls cloud-published server image updatesinternal
clickhouse + logserverOptional log-management tier (--profile logs)3002

The stack does not include the GridNMS-operated control plane (platform service, licensing issuer, signup, portal) — those stay in the cloud and you reach them only through the connector’s outbound check-in.

  • Linux (amd64/x86-64 or arm64/aarch64) with Docker Engine 24+ and the Compose plugin, or Windows 10/11 with Docker Desktop (WSL2 backend). The images are linux/amd64 + linux/arm64; on Windows they run inside Docker Desktop’s WSL2 VM. The installer auto-detects the architecture.
  • 4 vCPU / 8 GB RAM / 40 GB disk is comfortable for a starter deployment.
  • Outbound HTTPS (443) to platform.gridnms.io and images.gridnms.io.
  • Your license key (from the approval email).

On first boot the connector registers with the platform using your license key, receives a short-lived signed license token, and verifies it locally against the bundled public key (license-public.pem). It re-checks in hourly. Your feature set, device limit, and license state are controlled centrally — editing the local database cannot grant a higher tier, because the signature won’t verify.

If the instance can’t reach the platform, it runs on the last good license through a short grace window, then degrades. A true offline tier is available — see Air-gapped deployments.