Native Update Guide

Guide for updating your native Hydrodactyl installation and resolving common issues

Updating Your Native Installation

Newest release version:

Hydrodactyl Latest Release

Before proceeding with any updates, make sure to back up your database and panel files. Provided below is how you can make a backup of your Panel Database. (Replace panel with the database name you use)

# If using MySQL
mysqldump -u root -p --opt panel > ./panel.sql

# If using MariaDB
mariadb-dump -u root -p --opt panel > ./panel.sql

Prerequisites

  • Root or sudo access on your server
  • Latest NodeJS LTS installed
  • Composer installed globally
  • Backup of your current installation

Update Steps

  1. Install a Node Version Manager:

    curl -o- https://fnm.vercel.app/install | bash
  2. Install Node 22:

    fnm install 22
  3. Navigate to your Hydrodactyl installation directory:

    cd /path/to/your/hydrodactyl
  4. Download the latest release:

    curl -L https://github.com/blueprintframework/hydrodactyl/releases/latest/download/panel.tar.gz | tar -xzv
  5. Enable maintenance mode:

    php artisan down
  6. Set proper permissions:

    chmod -R 755 storage/* bootstrap/cache
  7. Install PHP dependencies:

    composer install --no-dev --optimize-autoloader
  8. Clear application cache:

    php artisan view:clear
    php artisan config:clear
  9. Run database migrations:

    php artisan migrate --seed --force
  10. 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/*
  11. Restart the queue worker:

    php artisan queue:restart
  12. Install and build frontend assets:

    npm install -g corepack@latest
    corepack enable pnpm
    pnpm i --frozen-lockfile && pnpm run ship
  13. Verify permissions:

    chmod -R 755 storage/* bootstrap/cache/
  14. 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:

  1. Clear your browser cache and cookies

  2. Rebuild the frontend assets:

    pnpm i --frozen-lockfile && pnpm run ship
  3. 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:

  1. Verify the ownership of your files matches your web server user

  2. 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.