Skip to content

Deploy a FastAPI app on OrbixPanel

FastAPI deploys as a Python server app, served with uvicorn behind a reverse proxy.

The convention: app in your entry file

OrbixPanel detects your entry file (main.py / app.py) and starts:

Terminal window
uvicorn <entry>:app --host 0.0.0.0 --port $PORT

So your ASGI application must be named app:

main.py
from fastapi import FastAPI
app = FastAPI() # ← must be called `app`
@app.get("/")
def root():
return {"ok": True}

uvicorn is installed automatically if it isn’t in your requirements.txt (add it anyway — explicit is better).

Prepare your repo

  • requirements.txt with fastapi and uvicorn.
  • For heavier production loads you can run uvicorn workers via gunicorn, but the default single-process uvicorn is fine to start.
  • Config via environment variables, not hard-coded.

Deploy

Apps → Deploy from Git → repo + branch → Deploy → add domain + SSL. Background on the process: how deploys work.

Docs & async

Your interactive docs at /docs work out of the box. For async database drivers (e.g. asyncpg), point them at your panel-created database on localhost.

Troubleshooting

  • Error loading ASGI app → the object isn’t named app, or the module path doesn’t match your entry file.
  • Won’t go live → make sure nothing overrides the host/port; let uvicorn use 0.0.0.0:$PORT.

Running OrbixPanel? FastAPI deploys from Git with uvicorn set up for you. OrbixPanel.com → — the free, self-hosted, AI-powered hosting control panel.