Pterodactyl is a popular open-source game server management panel that allows users to easily create and manage game servers. This tutorial will guide you through the process of installing Pterodactyl on Void Linux.
Before we begin with Pterodactyl installation, it's important to update the system to ensure all the latest packages are installed. Open your terminal and run the following command:
sudo xbps-install -Su
That command will update the package index and upgrade the system to the latest version.
Pterodactyl requires various dependencies to be installed on the system. Run the following command to install them:
sudo xbps-install -S curl tar gzip git sqlite
This will install the curl, tar, gzip, git, and sqlite packages.
Pterodactyl requires Node.js to be installed on the system. Run the following command to install it:
sudo xbps-install -S nodejs
This might take some time depending on your internet speed.
Yarn is a package manager for JavaScript that Pterodactyl uses to manage its dependencies. Run the following command to install it:
sudo xbps-install -S yarn
NGINX is a popular web server that we'll use to proxy all incoming HTTP/HTTPS requests to the Pterodactyl daemon. Run the following command to install it:
sudo xbps-install -S nginx
Now we're ready to install Pterodactyl itself. First, create a new directory where Pterodactyl will be installed:
mkdir -p /usr/local/pterodactyl
Then, clone the Pterodactyl repository to this directory:
sudo git clone https://github.com/pterodactyl/panel.git /usr/local/pterodactyl
Next, navigate to the Pterodactyl directory and install its dependencies:
cd /usr/local/pterodactyl
sudo yarn install --production --ignore-engines
Next, we need to configure NGINX to proxy requests to Pterodactyl's daemon. Create a new configuration file for NGINX:
sudo nano /etc/nginx/conf.d/pterodactyl.conf
Add the following content to the configuration file:
server {
listen 80;
listen [::]:80;
server_name your-domain.com;
location / {
proxy_pass http://127.0.0.1:8080;
proxy_http_version 1.1;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
}
Replace "your-domain.com" with your own domain, or your server's IP address if you don't have one. Save and exit the file.
Test the configuration file by running the following command:
sudo nginx -t
If there are no errors, reload the NGINX configuration:
sudo systemctl reload nginx
Finally, we need to configure Pterodactyl itself. Navigate to the Pterodactyl directory:
cd /usr/local/pterodactyl
Copy the sample configuration files:
sudo cp .env.example .env
Edit the .env file with your favorite text editor:
sudo nano .env
Edit the following environment variables:
APP_URL=http://your-domain.com
DB_CONNECTION=sqlite
Replace "your-domain.com" with your own domain. Save and exit the file.
Next, generate application keys:
sudo php artisan key:generate --force
We're now ready to start the Pterodactyl daemon. Run the following command:
sudo chmod -R 755 /usr/local/pterodactyl
sudo php artisan p:environment:setup
sudo php artisan migrate --seed --force
sudo php artisan queue:work --daemon --queue=high,default
That's it! Pterodactyl is now installed and ready to use. To access the Pterodactyl control panel, navigate to http://your-domain.com in your web browser.
Conclusion
In this tutorial, we learned how to install Pterodactyl on Void Linux. We installed all the necessary dependencies, configured NGINX, and set up Pterodactyl itself. Now you can easily manage all your game servers through a user-friendly web interface!
If you want to self-host in an easy, hands free way, need an external IP address, or simply want your data in your own hands, give IPv6.rs a try!
Alternatively, for the best virtual desktop, try Shells!