What you will read?
Pterodactyl is a user-friendly, open-source game server management developed with an emphasis on security. It makes it possible for users to control game servers and different applications through a website Interactively ensuring the use and management of the server are easy and effective. Its modular structure and strong API support make it a great candidate for game hosting companies and gamers who need reliable server management.
Prerequisites for Installation
Before installing the Pterodactyl panel on CentOS 7, several key prerequisites must be met to ensure a successful setup:
- A clean installation of CentOS 7 with root or sudo access.
- An active internet connection for downloading packages and dependencies.
- Basic command-line knowledge for executing installation steps.
- A properly configured domain name (optional for SSL).
- Installed and configured firewall (optional but recommended).
Step-by-Step Installation Guide
To install the Pterodactyl panel on CentOS 7, follow the detailed guide below to ensure proper setup and functionality.
Server Preparation and Updates
Start by updating your server to the latest package versions and ensure it is ready for further installations:
sudo yum update -y sudo yum upgrade -y
Installing Required Dependencies
Install essential software packages and libraries that Pterodactyl depends on:
sudo yum install -y epel-release sudo yum install -y tar unzip git curl
Setting Up MySQL Database
Install and configure MySQL to manage data for the Pterodactyl panel:
sudo yum install -y mariadb-server sudo systemctl start mariadb sudo systemctl enable mariadb
Run the mysql_secure_installation
script and follow the prompts to secure your installation.
Installing PHP and Related Modules
Ensure PHP and required extensions are installed:
sudo yum install -y php php-cli php-fpm php-mysqlnd php-xml php-mbstring php-json
Setting Up Nginx as Web Server
Install Nginx and configure it to serve the Pterodactyl panel:
sudo yum install -y nginx sudo systemctl start nginx sudo systemctl enable nginx
Downloading and Configuring Pterodactyl Panel
Download the Pterodactyl panel from the official source and configure it accordingly:
cd /var/www/html curl -Lo panel.tar.gz https://example.com/panel-release.tar.gz tar -xzvf panel.tar.gz
Configuring SSL Certificates (Optional)
Secure your panel with SSL certificates using Let’s Encrypt or other services:
sudo yum install -y certbot sudo certbot --nginx
Configuring Daemon for Wings
The Wings daemon is responsible for running the game servers managed by the Pterodactyl panel. Proper configuration is essential for smooth operation.
Installing Docker and Setting Up Wings
Docker is required for the Wings daemon to function. Install Docker and set up Wings with the following steps:
sudo yum install -y yum-utils sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo sudo yum install -y docker-ce docker-ce-cli containerd.io sudo systemctl start docker sudo systemctl enable docker
Download and configure the Wings daemon:
curl -Lo /usr/local/bin/wings https://example.com/wings-release.tar.gz chmod +x /usr/local/bin/wings wings configure --panel-url https://your.panel.url --token your_api_token
Start the Wings service:
sudo wings --debug
Final Setup and Testing
After installing and configuring all components, complete the setup by verifying the communication between the panel and Wings. Access your panel through your domain to ensure it loads correctly. Check that the Wings service is running by viewing its status and confirming it is connected to the panel.
Test the setup by creating and deploying a game server from the panel. Confirm that the server starts and operates as expected, indicating a successful installation.
Troubleshooting Common Issues
If the panel does not load, review the Nginx configuration and check PHP error logs for any issues. Ensure that the PHP-FPM service is active and configured correctly. For database connection problems, verify the MySQL credentials and confirm that the MySQL service is running. Recheck the database connection settings in the panel’s configuration file. If Wings fails to connect, confirm that the API token and panel URL in the Wings configuration file are accurate. Ensure that Docker is running properly, as it is necessary for Wings’ operation. Review the Wings service logs for more detailed error information.
Conclusion
Installing the Pterodactyl panel on CentOS 7 involves a structured approach that includes preparing the server, installing dependencies, and configuring both the panel and Wings. By following this guide and ensuring each step is completed properly, you can set up a reliable and efficient game server management system. Addressing common issues and verifying configurations will help maintain smooth operations and optimal performance.