netbird-server
netbird-server — Self-Hosted Control Plane
Scope: This skill documents the helmforge/netbird chart (
repo.helmforge.dev,helmforge/netbird) deployment of the self-hosted control plane — the pattern used by the production talos-stack deployment. NetBird also ships an official self-hosted setup (docker-compose with optional Traefik); if you're following that path, the components are the same but the chart-specific values (database subchart, existingSecret keys, GRPCRoute wiring) don't apply. For the docker-compose variant see docs.netbird.io/selfhosted.
For the client agent see netbird-cli. For Terraform provider see netbird-terraform. For the K8s operator see netbird-operator (the operator consumes an EXISTING control plane — it does not deploy one).
What You're Deploying
The control plane is a single combined server (netbirdio/netbird-server) running management API, gRPC, signal, relay, metrics, health, and embedded STUN in one container, plus a separate dashboard (netbirdio/dashboard).
| Component | Image | Role |
|---|---|---|
| server | netbirdio/netbird-server |
management + signal + relay + STUN + embedded IdP (Dex) |
| dashboard | netbirdio/dashboard |
web UI (embedded nginx) |
Configured by a single config.yaml (replaces old management.json + relay.env). All services listen on HTTP inside the cluster; TLS terminates at your ingress/gateway — the proxy MUST support HTTP/2 / gRPC (h2c).