What is probably broken
The API runs with `uvicorn main:app --reload`, but dies after SSH closes or returns 502 through Nginx.
FastAPI deployment guide
FastAPI is simple locally, but production needs a managed Python process, a reverse proxy, secrets, logs, and a restart strategy.
The API runs with `uvicorn main:app --reload`, but dies after SSH closes or returns 502 through Nginx.
A FastAPI service running as a managed Ubuntu service, reachable through HTTPS, with logs you can inspect.
STEP 01
Use an isolated environment so dependency versions are controlled and deploys do not depend on global Python packages.
STEP 02
Production FastAPI should run under a process supervisor, not an interactive shell.
STEP 03
Nginx terminates SSL and forwards requests to the internal FastAPI port or socket.
Quick check
If you cannot tick all five, we can fix it. Send us the repo and we handle the rest.
Free checklist
Get the exact 5-step checklist we run before every deploy. No fluff, just the things that actually break.
Done-for-you deploy
Fixed price per repo. 24h delivery or full refund. No hourly billing.
Related guides
A practical checklist for moving a Lovable-built app to your own VPS with custom domain, environment variables, database, SSL, backups, and smoke tests.
Read guideA practical Vercel-to-VPS migration checklist for small apps that need predictable cost, custom server control, databases, logs, and backups.
Read guideA practical checklist for self-hosting Supabase with Docker Compose, named volumes, backups, env vars, and restore testing before going production.
Read guide