Administration
Troubleshooting
The usual suspects, and how to fix each one. For problems during provisioning, see the provision script's own troubleshooting section.
Setup or deploy fails with "Permission denied (publickey)"
The deploy key isn't on the repository. Copy it from the project's Settings → Deploy key, add it in GitHub or GitLab, then Retry setup / Deploy now.
Certificate request failed
Open the domain page: the DNS check shows whether the A records point here, and the error from certbot is displayed. Common causes: DNS not propagated yet, Cloudflare proxy on, port 80 blocked, or Let's Encrypt rate limits after many attempts.
502 Bad Gateway on a project
PHP-FPM for that version isn't running, or the project's PHP version was removed. Check Dashboard → Services, restart phpX.Y-fpm, or change the project's PHP version in Settings.
500 error after deploy (Laravel)
Check storage/logs/laravel.log on the project's Logs tab. A missing APP_KEY or wrong DB_* values in the Environment tab are the usual suspects; deploy again after fixing so the cached config is rebuilt.
Worker keeps restarting
Open its log. A wrong path or PHP binary shows as Fatal or Restarting immediately; use a template to get the correct command.
.env changes don't apply
Laravel caches configuration during deploys (php artisan optimize). Run a deploy after editing.
I'm locked out
SSH to the droplet, check SM_ADMIN_EMAIL / SM_ADMIN_PASSWORD in /opt/server-manager/.env, and run docker compose up -d. Login throttling clears after a minute.
If the main administrator lost their 2FA device, clear it from the server:
$ cd /opt/server-manager
$ docker compose exec server-manager php artisan tinker --execute="App\Models\User::where('email', config('servermanager.admin.email'))->update(['two_factor_secret'=>null,'two_factor_confirmed_at'=>null]);"
A panel user lost their 2FA device or password? The main administrator uses Users → Reset 2FA or Reset password.
Still stuck?
Email info@endor.digital with what you tried and the relevant log lines.