Sign inSign up

greggee/nvpair-container

By greggee

•Updated 6 days ago

Unofficial headless NVIDIA PAIR for Docker and Unraid, with pairing and optional GPU telemetry.

Image
0

120

greggee/nvpair-container repository overview

⁠NVIDIA Personal AI Router — Headless Container

Run NVIDIA Personal AI Router (PAIR) on a Linux server or Unraid host, without a desktop environment.

PAIR routes inference requests between paired computers on your network. This unofficial container connects a separately managed Ollama backend to your PAIR cluster. Manage the node through the NVIDIA PAIR desktop application on another computer.

Image: greggee/nvpair-container:1.0.0
Platform: Linux/amd64
Source and setup guide: https://github.com/ggee/nvpair-container⁠

⁠Features

  • Checksum-verified NVIDIA PAIR v1.0.0 service bundle.
  • Persistent node identity and pairing.
  • Automatic appdata-directory initialization.
  • PAIR services run as UID/GID 10002:10002 after initialization.
  • Health checks and supervised worker processes.
  • Optional NVIDIA GPU utilization and VRAM telemetry.
  • Unraid template and Docker Compose examples.

⁠Requirements

  • A separate Ollama installation reachable on the Docker host at 127.0.0.1:11434.
  • Host networking with PAIR's ports available.
  • An existing NVIDIA PAIR desktop client for cluster management.
  • Optional NVIDIA drivers and container GPU support for telemetry.

Ollama, models, GPU drivers, and the desktop application are installed separately.

⁠Unraid installation

Run in the Unraid terminal:

mkdir -p /boot/config/plugins/dockerMan/templates-user

curl -fL \
  https://raw.githubusercontent.com/ggee/nvpair-container/main/unraid/nvpair.xml \
  -o /boot/config/plugins/dockerMan/templates-user/my-nvpair.xml

Open Docker → Add Container, select nvpair, and review the settings before applying.

The default appdata path is /mnt/user/appdata/nvpair. Its directory permissions are initialized automatically.

To change the name displayed in PAIR, enable Advanced View and edit --hostname=PAIR-UNRAID in Extra Parameters.

For Docker Compose installation, follow the repository README: https://github.com/ggee/nvpair-container#build-and-run-with-existing-ollama⁠

⁠Pairing

Send an invitation from your PAIR desktop client, then accept it from the Docker host:

docker exec --user=10002:10002 -it nvpair python3 /app/admin.py accept

Enter the PIN displayed by the inviting client.

Check node status:

docker exec --user=10002:10002 nvpair python3 /app/admin.py status

Keep your appdata when updating or renaming the node. It contains private identity keys; never publish it or share it between nodes.

⁠Optional NVIDIA telemetry

In the Unraid template:

  • Append --gpus=all to Extra Parameters, preserving existing flags.
  • Set NVIDIA GPU selection to all.
  • Leave NVIDIA capabilities as utility.
  • Apply the changes to recreate the container.

Verify access:

docker exec --user=10002:10002 nvpair nvidia-smi

These settings enable monitoring. Configure Ollama's GPU inference access separately.

⁠Network access

This container uses host networking. Restrict the following listeners to loopback and your trusted LAN, for both IPv4 and IPv6:

  • TCP 11435: expected Ollama-compatible PAIR proxy.
  • TCP 14318–14323: PAIR node services.
  • UDP 5353: discovery.

Do not expose these services to the Internet. Avoid running another PAIR instance on the same host.

⁠Current scope

This wrapper enables Ollama's proxy. LM Studio and llama.cpp install buttons may still appear in the desktop client, but those engines are not supported or tested in this container.

Unraid startup, LAN pairing, and GTX 1080 telemetry have been demonstrated. Broader hardware testing and inference validation are welcome.

If pairing selects an unreachable VPN/Tailscale callback address, retry using LAN connectivity. Disconnecting Tailscale resolved this during initial testing.

⁠Support and licensing

Documentation and issue reports: https://github.com/ggee/nvpair-container⁠

Upstream NVIDIA PAIR: https://github.com/NVIDIA/Personal-AI-Router⁠

This is an independent, unofficial wrapper and is not supported or endorsed by NVIDIA.

The wrapper is licensed under Apache 2.0. NVIDIA software and bundled third-party components retain their respective licenses and notices.

Tag summary

Content type

Image

Digest

sha256:2aaad1e13…

Size

113.2 MB

Last updated

6 days ago

docker pull greggee/nvpair-container:1.0.0