Our configuration of Pterodactyl.
Install Nginx on host.
sudo apt install nginxCopy the nginx/ configs to your sites-available and CHANGE the domain.
Enable this config:
sudo ln -s /etc/nginx/sites-available/panel.{YOUR_DOMAIN} /etc/nginx/sites-enabled/panel.{YOUR_DOMAIN}
sudo ln -s /etc/nginx/sites-available/wings.{YOUR_DOMAIN} /etc/nginx/sites-enabled/wings.{YOUR_DOMAIN}sudo systemctl enable nginx
sudo systemctl restart nginxsudo systemctl status nginxInstall Dehydrated on host.
sudo apt install dehydratedEdit /etc/dehydrated/domains.txt
panel.{YOUR_DOMAIN}
wings.{YOUR_DOMAIN}sudo dehydrated -csudo crontab -eAdd this line:
0 3 * * * /usr/local/bin/dehydrated -c >/dev/null 2>&1Copy this Docker Compose config to your directory.
Copy .env.example to .env and edit it. Check Variables List for more information.
sudo docker compose up -dThe following command starts a dialog.
sudo docker compose run --rm panel php artisan p:user:makeFirst create a location within the UI. Then create a node with the following settings:
| Setting | Description |
|---|---|
Name |
Name your node |
Location |
Choose your created location |
Visibility |
public |
FQDN |
Set to full domain of node |
SSL |
Use SSL |
Proxy |
Behind Proxy |
Memory |
Choose according to your server |
Storage |
Choose according to your server |
Daemon Port |
443 |
Daemon SFTP Port |
2022 |
Default: deny (incoming), allow (outgoing), deny (routed),
| Port | Protocol | Status | Usage |
|---|---|---|---|
22/tcp |
SSH |
LIMIT IN |
SSH |
80/tcp |
HTTP |
ALLOW IN |
NGINX |
443/tcp |
HTTPS |
ALLOW IN |
NGINX |
2022/tcp |
SFTP |
ALLOW IN |
WINGS |
8080/tcp |
HTTP |
local |
Panel |
8443/tcp |
HTTPS |
local |
Wings |
24454/udp |
ALLOW IN |
Simple Voice Chat |
|
25565:25575/tcp |
ALLOW IN |
Minecraft |
| Option | Value |
|---|---|
TIMEZONE |
Set to your timezone |
PANEL_URL |
Set to the panel url |
PANEL_SERVICE_AUTHOR |
Set to your mail |
PANEL_TRUSTED_PROXIES |
Set to IP address of your proxy |
MYSQL_ROOT_PASSWORD |
Set mysql root pwd |
MYSQL_DATABASE |
Set db name |
MYSQL_USER |
Set db username |
MYSQL_PASSWORD |
Set user pwd |