Pterodactyl
Add a Pterodactyl platform beside the hypervisor on an agent
Pterodactyl is the game-server install. The hypervisor, when you want virtual machines, is one of proxmox, virtfusion, or solusvm. Install game servers alone, add a hypervisor later, or add game servers to an agent that already has a hypervisor.
The onboarding path with panel screenshots is Get started (Pterodactyl). Command flags are in Install an agent for Pterodactyl.
Platform
On Platforms & nodes, create a platform and check This platform is Pterodactyl. Enter the panel URL. A bare IP is stored as http:// plus that IP. NodeRings stores the URL only.
Agent
Gather an application key and a client key before the install. On the application key (ptla_), set Servers to Read & Write, and Nodes, Allocations, Nests, and Eggs to Read. Leave every other resource on None. The client key (ptlc_) is created while logged in as the panel user you pass as --panel-user-id. That user owns the servers. The client key has no permission grid; power, files, databases, schedules, backups, and the console use it. Keep each key in its own file. Get started (Pterodactyl) shows the screens.
If this agent has no hypervisor and should sell game servers only, pass --pterodactyl. The command asks for the panel URL, both keys, and the user id, and shows the keys as you type. To skip the questions, export PTERODACTYL_PANEL_URL, PTERODACTYL_APPLICATION_KEY, PTERODACTYL_CLIENT_KEY, and PTERODACTYL_PANEL_USER_ID. Put the key itself in the variable.
nr cluster register \
--pterodactyl \
--name edge-ams-01 \
--agent-ip 203.0.113.10 \
--gateway-region AMS01 \
--org-id <org-uuid>If the agent is already registered with Proxmox, VirtFusion, or SolusVM, do not register it again:
nr cluster install-pterodactylKeys are written into a Secret in pterodactyl-system and are not sent to NodeRings. Key files, when you use them, should be mode 0600.
Wings node
Add a node on that platform. The name must match the Wings node name under Admin → Nodes. Pick a region. The panel Location column is not a NodeRings field. Bridge, storage, and VMID seed are not used.
