- Backup your hidden
.env
file containing the decryption APP_KEY from/var/www/pterodactyl
-
Export the database, in this case ours is named panel
mysqldump -u root -p --opt panel > /var/www/pterodactyl/panel.sql
The .sql file would be saved in the
/var/www/pterodactyl/
folder.
- Follow the panel installation documentation to install the panel on your new server.
-
Transfer the
panel.sql
file to your new server and import the database. Make sure you're in the folder containing your .sql dump when performing the commands.mysql -u root -p panel < panel.sql
-
After this, transfer your old
.env
file to the/var/www/pterodactyl
location to complete the panel migration.
- Follow the Wings installation documentation to install Wings on your new machine.
- Once new Wings are configured, migrate all your volumes from your old machine to the new one. By default, the path would be
/var/lib/pterodactyl/volumes/
. Check your Wingsconfig.yml
for your configured data path.
After the migration of volumes is done, you must update all the allocations since your IP most likely has changed.
Type hostname -I | awk '{print $1}'
on your Wings machine to retrieve the IP. After that, login to your Panel machine to modify the database.
In the example below, we assume that the database name is panel
. Replace newiphere
with the IP returned from the hostname command above while oldiphere
with the IP of your old allocation.
mysql -u root -p
UPDATE panel.allocations SET ip = 'newiphere' WHERE ip = 'oldiphere';
exit
For help on that the best place will be to join the pterodactyl discord server or ask chatgpt about how to copy folders frome one server to another using sftp.