Native Update Guide
Guide for updating your native Pyrodactyl installation and resolving common issues
Updating Your Native Installation
Before proceeding with any updates, make sure to back up your database and panel files.
Prerequisites
- Root or sudo access on your server
- Latest NodeJS LTS installed
- Composer installed globally
- Backup of your current installation
Update Steps
-
Install a Node Version Manager:
curl -o- https://fnm.vercel.app/install | bash
-
Install Node 22:
fnm install 22
-
Navigate to your Pyrodactyl installation directory:
cd /path/to/your/pyrodactyl
-
Download the latest release:
curl -L https://github.com/pyrohost/pyrodactyl/releases/latest/download/panel.tar.gz | tar -xzv
-
Enable maintenance mode:
php artisan down
-
Set proper permissions:
chmod -R 755 storage/* bootstrap/cache
-
Install PHP dependencies:
composer install --no-dev --optimize-autoloader
-
Clear application cache:
php artisan view:clear php artisan config:clear
-
Run database migrations:
php artisan migrate --seed --force
-
Set ownership based on your web server:
# For NGINX (non-CentOS) chown -R www-data:www-data /var/www/pterodactyl/* # For NGINX (CentOS) chown -R nginx:nginx /var/www/pterodactyl/* # For Apache (CentOS) chown -R apache:apache /var/www/pterodactyl/*
-
Restart the queue worker:
php artisan queue:restart
-
Install and build frontend assets:
npm install -g corepack@latest corepack enable pnpm pnpm i --frozen-lockfile && pnpm run ship
-
Verify permissions:
chmod -R 755 storage/* bootstrap/cache/
-
Disable maintenance mode:
php artisan up
Troubleshooting Common Issues
Hydration Mismatch Errors
If you encounter hydration mismatch errors in the browser console, try these steps:
-
Clear your browser cache and cookies
-
Rebuild the frontend assets:
pnpm i --frozen-lockfile && pnpm run ship
-
Clear the application cache:
php artisan view:clear php artisan config:clear
Hydration mismatches often occur when the server-rendered content doesn't match the client-side rendered content. This can happen due to browser extensions or cached assets.
Permission Issues
If you encounter permission issues after updating:
-
Verify the ownership of your files matches your web server user
-
Ensure storage and cache directories are writable:
chmod -R 755 storage/* bootstrap/cache/ chown -R www-data:www-data storage bootstrap/cache
Replace www-data
with your web server user (nginx, apache) if different.