Updating the Panel
Safely update the Skyport panel to a new version.
Automatic update (recommended)
Section titled “Automatic update (recommended)”The fastest way to update is with the official update script:
bash <(curl -fsSL https://raw.githubusercontent.com/skyportsh/installer/main/update-panel.sh)The script handles everything automatically:
- Detects whether your installation is git-based (bleeding edge) or release-based (stable)
- Backs up your database and
.envtostorage/backups/ - Puts the panel in maintenance mode
- Pulls the latest code
- Updates PHP and JS dependencies
- Runs database migrations
- Rebuilds frontend assets (client + SSR)
- Clears caches and fixes permissions
- Restarts all three services
- Exits maintenance mode
After the update, it shows the previous and current version numbers.
Manual update
Section titled “Manual update”If you prefer to update manually, follow these steps.
Before updating, read the release notes for the version you are moving to.
1. Back up your data
Section titled “1. Back up your data”cd /var/www/skyport
# SQLitecp database/database.sqlite database/database.sqlite.bak
# MySQLmysqldump -u skyport -p skyport > skyport_backup.sql
# Always back up .envcp .env .env.bak2. Enter maintenance mode
Section titled “2. Enter maintenance mode”php artisan down3. Pull the new code
Section titled “3. Pull the new code”Git (bleeding edge):
git fetch --all --tagsgit reset --hard origin/mainRelease (stable):
Download the latest release tarball and extract it over your installation, preserving .env, database/, and storage/.
4. Update dependencies and rebuild
Section titled “4. Update dependencies and rebuild”COMPOSER_ALLOW_SUPERUSER=1 composer install --no-dev --optimize-autoloaderbun installbun run build:ssr5. Run migrations and regenerate routes
Section titled “5. Run migrations and regenerate routes”php artisan migrate --forcephp artisan wayfinder:generate --with-form --no-interaction6. Clear caches
Section titled “6. Clear caches”php artisan optimize:clear7. Fix permissions and restart
Section titled “7. Fix permissions and restart”chown -R www-data:www-data /var/www/skyportchmod -R 755 storage bootstrap/cachesystemctl restart skyport-panel skyport-queue skyport-ssr8. Exit maintenance mode
Section titled “8. Exit maintenance mode”php artisan upAlso update your daemons
Section titled “Also update your daemons”Keep skyportd close to the panel version. The daemon performs compatibility checks, so mismatched versions may cause enrollment or sync failures.
See Upgrading skyportd.