Skip to content

Getting started

This guide brings up the full Yagra stack on one machine with Docker Compose: core, a poller, the WebUI, and the backing stores. By the end you are signed in and monitoring your first node.

  • Docker and the Docker Compose plugin.
  • On Linux, the poller uses raw-socket ICMP and needs the NET_RAW capability — the bundled Compose file grants it (cap_add: [NET_RAW]).
  1. Clone the repository:

    Terminal window
    git clone https://github.com/horryworks/Yagra.git
    cd Yagra
  2. Start everything:

    Terminal window
    docker compose up --build

    The first build takes a few minutes; subsequent starts are fast.

  3. Retrieve the one-time admin password, printed to the core logs on first start:

    Terminal window
    docker compose logs core
  4. Open the WebUI at https://localhost:8443 and sign in as admin with that password.

    Your browser will warn on this first visit. The certificate is self-signed until you import one, and Yagra cannot know the hostname you will use, so the name usually will not match either. Accept it for now; Settings ▸ TLS takes a real certificate, or regenerates the self-signed one with the right names.

The stack exposes two HTTP ports, plus UDP intake listeners for passive data. The listeners are opt-in features — this composition enables the first three by default:

Port Protocol Service
8443 TCP (HTTPS) WebUI
8080 TCP (HTTP) REST API (+ Prometheus /metrics)
514 UDP syslog intake
162 UDP SNMP trap intake (v1/v2c + informs)
2055 UDP NetFlow v5/v9 / IPFIX intake

The stores (PostgreSQL, Redis, NATS, VictoriaMetrics, VictoriaLogs, ClickHouse) stay on the internal Docker network. The full matrix, including what to firewall, is in the port reference.

  1. Go to Nodes in the sidebar and choose Add node.

  2. Enter a name and the device’s IP address. With no more than that, Yagra starts ICMP liveness monitoring right away.

  3. To collect interface and system metrics too, assign an SNMP credential (a v2c community or SNMPv3 user) and pick a device profile — the built-in profiles cover common device families, and a generic SNMP profile works for anything else.

  4. Within a poll cycle the node’s state, response time, and — with SNMP — per-interface traffic appear on the node’s detail page.

Adding devices one by one is not the only way: discovery sweeps an IP range, finds what answers, classifies it, and lets you import the results in bulk. Both paths, plus URL, DNS, and Meraki monitors, are covered in the monitoring guide.

  • Going to production? This composition builds from source and is meant for evaluation. The installation guide covers the production-shaped deployment — pinned release images, persistent credential encryption, and backups — plus native installs and remote-site pollers.
  • Tune the stack — every environment variable, default, and clamp is in the configuration reference.
  • Explore the featuresalerting, passive events, traffic flow, and dashboards & reports.
  • Understand the design — the architecture overview explains how core, pollers, the bus, and the stores fit together.