Skip to main content
Hostwares

Where can you host a Django app with GitHub deploys?

On a Frontend pack with a PostgreSQL pack beside it: connect the repository, the Python app is detected, and it runs under gunicorn on its own CPU, memory and disk. Each push to the branch deploys, and the site has a terminal for manage.py commands. The price is flat per pack, so a small Django app with a database costs the same every month whatever the traffic.

Step by step

  1. 1

    Prepare the repository

    Make sure requirements.txt lists gunicorn and your database driver, and that settings read the secret key, the debug flag, the allowed hosts and the database from environment variables.

  2. 2

    Deploy it

    Dashboard → Deployments → New: select the repository and a pack. Set the start command to gunicorn with your project's WSGI module. The order creates an invoice and the build starts once it is paid.

    Start command

    gunicorn myproject.wsgi:application --bind 0.0.0.0:$PORT
  3. 3

    Create PostgreSQL and connect it

    Dashboard → Databases → New: choose PostgreSQL, then set DATABASE_URL on the site's Environment tab along with your secret key and the site's domain in the allowed hosts.

  4. 4

    Migrate and collect static files

    Run both from the site's terminal, or add them before gunicorn in the start command.

    In the site terminal

    python manage.py migrate
    python manage.py collectstatic --noinput
  5. 5

    Attach the domain

    Site → Domains tab → enter the domain and create the DNS record it shows. Add the domain to the allowed hosts and to the trusted origins for CSRF.

What breaks, and the fix

Static files return 404
Serve them with WhiteNoise, or run collectstatic and point the static root at a folder the server serves.
Bad Request (400) on the new domain
The domain is missing from the allowed hosts setting.

What it costs

  • A Frontend pack from $1/mo; $5/mo for the pack most production apps pick (1 vCPU / 4 GB / 25 GB).
  • A PostgreSQL pack from $10/mo.

App

$1/mo

Starter Frontend pack, 1 vCPU / 1 GB RAM / 10 GB

Database, users and files

$5/mo

Smallest dedicated Supabase pack; several projects fit on one

Questions

Does Celery work?+

Yes. Add a Redis pack as the broker and deploy the worker as a second site from the same repository, or run web and worker together on a Cloud Instance.

Can I use FastAPI or Flask instead?+

Yes. Any Python web app that listens on the port it is given deploys the same way, with uvicorn or gunicorn as the server.

Where should media uploads go?+

In an S3-compatible bucket. Do not rely on files written next to the code surviving a redeploy.

Can I run manage.py commands?+

Yes, from the site's web terminal, or through an agent over MCP with site_terminal.

Do I need a Dockerfile?+

No. A Dockerfile in the repository is used if present; otherwise the Python build is detected.

What does it cost?+

From $1/mo for the app and from $10/mo for PostgreSQL.