View .md

Locations, nodes, allocations and mounts

Set up locations and Wings nodes in FeatherPanel, add IP and port allocations, share host folders with mounts, and use the node tools such as terminal and self-update.

On this page

Locations

A location groups nodes by region or purpose, for example USA-East or Romania-Bucharest. Admin area, Locations, Create Location asks for a name, a description, an optional country flag and a type:

TypeNodes
Game HostingFeatherWings nodes for game servers
VDS / VPSProxmox VE nodes, see VDS
Web HostingFeatherQuilld nodes, see Web hosting

The type is permanent. A location cannot be deleted while game, VDS or web nodes are assigned to it.

Nodes

A node is one machine running FeatherWings. The full install walk-through is in Installing FeatherWings. Create Node asks for:

  • Basic Details. Name, description, location (you can create one from the picker), and visibility. A private node is skipped by auto-deployment.
  • Configuration. Daemon type, total memory and disk with over-allocation values, and the directory for server files. The daemon type is FeatherWings (recommended) or Calagopus wings-rs, and cannot be changed later.
  • Network. The FQDN Wings is reached at. Use an IP only without SSL. Choose SSL or HTTP: when the panel runs on HTTPS, browsers need SSL on the node too. Pick Behind Proxy when the daemon sits behind Cloudflare or a similar proxy, so it does not look for certificates on boot. An optional SFTP hostname is shown to users instead of the FQDN.
  • Advanced. Daemon port, SFTP port, FastDL port (the public nginx port, 80 by default), public IPv4 and IPv6, maintenance mode (no new deployments), and the upload size limit.

Node tools

Edit Node has a Wings tab with the quick setup commands, the join data and the generated config.yml. Once Wings is connected you also get these tabs:

TabWhat it does
AllocationsIP and port pairs for servers (below).
Wings TerminalRuns shell commands on the host as the daemon user.
Remote Wings ConfigEdit config.yml in the browser, optionally restarting Wings after saving.
Wings ModulesSee Wings modules.
Resource Utilization, System InformationLive usage and host details.
Docker ManagementImage and container sizes, and Prune Docker to remove unused images, containers and networks.
DiagnosticsBuilds a report, optionally with Wings logs, and can upload it to a paste service.
Wings Self-UpdateUpdate from a GitHub release or a direct URL, with an optional SHA256 checksum and version.

The node list also has Mass move servers (see Server transfers) and a link to the node’s databases. If the daemon token leaks, use Request Master Daemon Reset Key on the node’s Wings tab. The old key stops working and you have to update the Wings configuration, for example by running the setup again.

Node Status shows every node at once: online or offline, CPU, memory, disk and swap use, server count and players online.

Allocations

Allocations are the IP and port pairs servers listen on. Every server needs at least one. In Edit Node, Allocations, Create Allocation takes an IP, a port or range (25565-25700 or 25565:25700, up to 1000 ports), an optional IP alias shown to users, and notes. Create generous ranges up front. Open the ports for both TCP and UDP if you use a firewall other than iptables.

  • Delete Selected skips allocations that belong to a server.
  • Delete Unused removes every unassigned allocation, or only those on one IP.
  • Change IP/Alias rewrites every allocation on one IP to a new IP or alias, including assigned ones.

Mounts

Mounts share a host folder with servers, for example a shared mod pack. Admin area, Mounts, Create mount:

  • Name, host source path, container path, description, and read-only or read/write.
  • Nodes. Required: Wings only allows mounts listed in its allowed_mounts, and linking a node adds the source path there.
  • Spells. Optional limit to certain spells.
  • Users can self-attach. When off, only admins can attach the mount to a server.

Attach mounts to a server from the server’s Mounts tab in Edit Server.

API

MethodPathPermission
GET, PUT/api/admin/locationsadmin.locations.view, admin.locations.create
GET, PUT/api/admin/nodesadmin.nodes.view, admin.nodes.create
PATCH, DELETE/api/admin/nodes/{id}admin.nodes.edit, admin.nodes.delete
POST/api/admin/nodes/{id}/reset-keyadmin.nodes.edit
GET/api/admin/nodes/status/globaladmin.nodes.view
GET, PUT/api/admin/allocationsadmin.allocations.view, admin.allocations.create
DELETE/api/admin/allocations/delete-unusedadmin.allocations.delete
GET, PUT/api/admin/mountsadmin.nodes.view, admin.nodes.edit

Frequently asked questions

Can I change a location from game hosting to web hosting?

No. The location type is set when you create it and cannot be changed. Create a new location of the right type.

How many ports can I add at once?

Up to 1000 per request, written as a range like 25565-25700 or 25565:25700.

Why can I not delete a node?

A node with servers on it cannot be deleted. Move the servers with a transfer first, or delete them.