Skip to main content

Prerequisites

Before installing Wings, ensure your system meets the following requirements:
Wings runs on Linux-based operating systems. Supported distributions include:
  • Ubuntu 20.04+ (recommended)
  • Debian 11+
  • CentOS 8+ / Rocky Linux / AlmaLinux
  • Fedora 35+
Wings requires Docker to be installed and running:
  • Docker Engine 20.10 or newer
  • Docker must be running and accessible by the Wings process
  • The user running Wings needs permission to interact with Docker
You need a running Pterodactyl Panel instance:
  • Panel version compatible with Wings
  • A node created in the Panel admin area
  • API credentials from the Panel for this node
Wings should be installed on a separate server from your Pterodactyl Panel for security and performance reasons. Installing both on the same server is not recommended for production use.

Installation Steps

1

Install Docker

If Docker is not already installed, install it using the official Docker installation script:
Verify Docker is running:
The Docker installation script automatically handles repository setup and package installation for most distributions.
2

Create Required Directories

Wings uses specific directories for configuration and data storage. Create them with appropriate permissions:
These are the default directories. You can customize them in the Wings configuration file if needed.
3

Download Wings Binary

Download the latest Wings binary from the official GitHub releases:
For ARM64 systems, use:
Verify the installation:
You should see output similar to:
4

Configure Wings via Panel

Wings provides an automatic configuration command that fetches settings from your Panel:
Before running this command, create a node in your Pterodactyl Panel admin area and obtain the auto-configuration command from the node’s configuration tab.
The command looks like this:
Parameters explained:
  • --panel-url (-p): Your Panel’s URL (must be accessible from Wings)
  • --token (-t): API token from the Panel
  • --node (-n): The numeric ID of the node
This command will:
  1. Connect to your Panel via the API
  2. Fetch the node configuration
  3. Write the configuration to /etc/pterodactyl/config.yml
If you need to reconfigure an existing Wings installation, use the --override flag to overwrite the existing configuration file.
5

Start Wings in Debug Mode (Optional)

Before setting up Wings as a service, test that it works correctly:
You should see output similar to:
Wings will:
  • Load the configuration from /etc/pterodactyl/config.yml
  • Configure the Docker environment
  • Start the HTTP API server (default port 8080)
  • Start the SFTP server (default port 2022)
  • Load and initialize any existing servers
Watch the logs to ensure there are no errors. Press Ctrl+C to stop Wings when you’re ready to continue.
6

Create Systemd Service

Create a systemd service file to manage Wings:Create /etc/systemd/system/wings.service:
Enable and start the service:
Wings runs as root by default because it needs to interact with Docker and manage file permissions. The actual game servers run as the pterodactyl user inside containers.
7

Verify Wings is Running

Check that Wings is running correctly:
You should see:
View live logs:
Check that Wings is listening on the correct ports:

Configure Firewall

Ensure your firewall allows traffic on the required ports:
The Wings API port (8080) should only be accessible from your Pterodactyl Panel server, not from the public internet. Configure your firewall accordingly.

Create Your First Server

With Wings running, you can now create servers from your Pterodactyl Panel:
1

Verify Node Connection

In the Panel admin area, navigate to Nodes and check that your node shows as online with a green indicator.
2

Create a Server

Go to ServersCreate New Server in the Panel and:
  • Select your Wings node
  • Choose an egg (game/application type)
  • Allocate resources (CPU, memory, disk)
  • Assign network allocations (IP and ports)
3

Install the Server

The Panel will send installation instructions to Wings. Wings will:
  • Create a Docker container for the server
  • Run the installation script defined in the egg
  • Download game files as needed
  • Configure the server environment
Monitor the installation in real-time via the server console in the Panel.
4

Start the Server

Once installation completes, start the server from the Panel. Wings will:
  • Start the Docker container
  • Execute the startup command
  • Begin streaming console output
  • Report resource usage back to the Panel

Common Commands

Useful Wings commands for system administration:

Troubleshooting

Common causes:
  • Docker is not running: systemctl status docker
  • Configuration file is missing or invalid: Check /etc/pterodactyl/config.yml
  • Port already in use: Check with ss -tlnp | grep 8080
  • Permission issues: Ensure Wings has access to required directories
Check logs for specific errors:
Verify:
  • Wings service is running: systemctl status wings
  • API port (8080) is accessible from Panel server
  • Panel URL in config matches your actual Panel URL
  • Authentication token is correct in /etc/pterodactyl/config.yml
  • Firewall rules allow Panel → Wings communication
Check:
  • Docker containers: docker ps -a
  • Server logs in Panel console
  • Wings logs: journalctl -u wings -f
  • Available system resources (memory, disk)
  • Docker network configuration: docker network ls
Manually inspect container:
Verify:
  • SFTP server is running on port 2022: ss -tlnp | grep 2022
  • Firewall allows port 2022
  • Using correct credentials (Panel username and password)
  • Server is not suspended
  • SFTP is not disabled in config: Check read_only setting
Test SFTP connection:

Next Steps

Now that Wings is running, explore these topics:

Configuration

Customize Wings behavior and settings

SSL/TLS Setup

Enable HTTPS with Let’s Encrypt

Performance Tuning

Optimize Wings for your workload

Backup Operations

Configure automated backups

Additional Resources

For more detailed information, consult the following resources: