• Django
  • Gunicorn
  • NGINX
  • PostgreSQL

Django VPS HostingGunicorn, NGINX and PostgreSQL, ready for your code

Skip the server plumbing. We install Python, Gunicorn as a systemd service, NGINX with free SSL and PostgreSQL on a hardened KVM VPS. You push your Django project and go live.

  • KVM virtualisation
  • NVMe storage
  • Root SSH access
  • Free one-time setup
  • 99.9% uptime SLA

systemctl list-units --type=service --state=active

  • nginxHTTPS, static and media files
  • gunicornDjango WSGI workers
  • postgresqldatabase server
  • ufwfirewall: 22, 80, 443
  • fail2banSSH brute-force guard
  • unattended-upgradessecurity updates

Installed and secured before handover.

VPS-1smallest plan, 4 GB RAM
WSGIGunicorn as a systemd service
HTTPSfree Let's Encrypt on your domain
rootfull SSH access, key login
01Why a VPS

Why Run Django on a VPS

Shared Python hosting limits the processes, packages and background jobs a real Django project needs. A VPS removes those limits.

Your own Python environment

A virtual environment with the exact package versions your project pins.

A proper production stack

Gunicorn behind NGINX, as Django and Gunicorn recommend, instead of the development server.

Background work

Celery workers, scheduled jobs and management commands run on the same server.

Predictable cost

One flat server cost for the app, the database and the cache.

02The stack

How a Django Server Is Set Up

NGINX at the edge, Gunicorn running your project and PostgreSQL behind it.

  1. Web server

    NGINX

    HTTPS, redirects to HTTPS, static and media files, and buffering for slow clients.

  2. Application server

    Gunicorn

    Runs your Django project's WSGI application as a systemd service.

  3. Application

    Your Django project

    Deployed from Git into a virtual environment, with its own settings for production.

  4. Database

    PostgreSQL

    A database and user for your project, reachable only from the server.

  5. Cache and tasks

    Redis (optional)

    Caching or a Celery broker, on request.

05 CACHE AND TASKS Redis (optional) 04 DATABASE PostgreSQL 03 APPLICATION Your Django project 02 APPLICATION SERVER Gunicorn 01 WEB SERVER NGINX

Engineer's notes

  1. Gunicorn's documentation strongly recommends running it behind a proxy server such as NGINX.
  2. Set DEBUG to False and fill ALLOWED_HOSTS; Django does not work with DEBUG off and an empty ALLOWED_HOSTS.
  3. Run `python manage.py check --deploy` against your production settings before going live.
  4. Collect static files into STATIC_ROOT with `collectstatic` and let NGINX serve them.
  • 443HTTPS, NGINX
  • 80HTTP, redirects to HTTPS
  • 22SSH, you only
  • 8000Gunicorn, localhost only
03Use cases

What You Can Run

A Django website or web app

Server-rendered pages with the admin and the ORM.

A REST API

Django REST framework behind NGINX.

A SaaS backend

Accounts, billing logic and background jobs.

Internal tools

Dashboards and admin tools for a team.

Celery workers and schedules

Emails, reports and imports run off the web path.

A staging copy

A second project on the same server for testing.

04Sizing guide

Which Plan for Your Django Project

Gunicorn workers, the database and any Celery workers share the server's RAM.

Recommended start

VPS-1

2 vCores and 4 GB RAM for Gunicorn and PostgreSQL.

vCores2
RAM4 GB
NVMe40 GB
See VPS-1
Recommended start

VPS-2

4 vCores and 8 GB RAM.

vCores4
RAM8 GB
NVMe75 GB
See VPS-2
Recommended start

VPS-3

6 vCores and 12 GB RAM.

vCores6
RAM12 GB
NVMe100 GB
See VPS-3
Recommended start

VPS-4

8 vCores, 24 GB RAM and 200 GB NVMe.

vCores8
RAM24 GB
NVMe200 GB
See VPS-4

A starting point, not a limit: every plan upgrades in place, keeping your data, IP address and configuration.

05After handover

Deploying Your Django Project

A typical first deployment, as your own user. Replace the names with yours.

  1. Create the environment and install packages

    Inside your project folder.

    python3 -m venv .venv.venv/bin/pip install -r requirements.txt gunicorn
  2. Check the production settings

    Run Django's deployment check.

    .venv/bin/python manage.py check --deploy
  3. Prepare the database and static files

    Migrate and collect static files into STATIC_ROOT.

    .venv/bin/python manage.py migrate.venv/bin/python manage.py collectstatic --noinput
  4. Try Gunicorn by hand

    Replace myproject with your project package.

    .venv/bin/gunicorn myproject.wsgi --bind 127.0.0.1:8000
  5. Run it as a service

    Use a systemd unit that runs the same Gunicorn command, then reload.

    sudo systemctl enable --now myprojectsudo systemctl status myproject

Example commands: adjust names, paths and versions to your project. Deploying and maintaining your application is yours to do, or ask us for a quote.

06Cheat sheet

Django commands you will use every week

Copy, paste, adjust the names. Each one is safe to run as your own user on the server.

Restart the app

sudo systemctl restart myproject

Follow the log

sudo journalctl -u myproject -f

Apply migrations

.venv/bin/python manage.py migrate

Create an admin user

.venv/bin/python manage.py createsuperuser

Check settings for production

.venv/bin/python manage.py check --deploy

Reload NGINX safely

sudo nginx -t && sudo systemctl reload nginx
07Compare

Shared Python Hosting or Django on a VPS?

Shared hosting is cheaper to start. A VPS gives you the control a Django project grows into.

Shared Python hosting

  • Python and packagesProvider's version and limits
  • Application serverOften a fixed handler
  • DatabaseShared or limited
  • Background jobsUsually not possible
  • Server administrationHandled by the provider

Django VPS

  • Python and packagesYour version and your packages
  • Application serverGunicorn as a service you control
  • DatabaseYour own PostgreSQL
  • Background jobsCelery and scheduled jobs
  • Server administrationYours, after our free setup
Choose a VPS plan
08Handover

Your Django stack

Free one-time setup before you get access. Here is what happens, and what you receive.

  1. Pick a plan and a location

    Resources that fit your workload, in the datacentre closest to your users.

  2. Tell us your Django setup

    Versions, database and domain: at order or right after.

  3. We install and secure it

    Server hardened, the stack installed and tested, HTTPS on your domain.

  4. You get root

    SSH to a working server, ready for your code and data.

Installed for you

  • Python 3 with venv and pip, or the version you specify
  • Gunicorn as a systemd service for your project
  • NGINX reverse proxy serving static files, with HTTPS on your domain
  • PostgreSQL with a database and user for your project
  • Redis for caching or as a Celery broker, on request
  • Your Django code is deployed by you; settings and secrets stay yours

Secured before handover

  • Non-root sudo user created for daily work
  • SSH key login, password login for root disabled
  • Firewall (UFW) open only for the ports you use
  • Fail2ban blocking repeated login attempts
  • Automatic security updates enabled
  • Free Let's Encrypt SSL on your domain
  • Timezone, swap and hostname configured

Not included (we say so up front)

  • Ongoing server administration
  • Application maintenance and updates
  • Debugging your code
  • Migrating existing sites or data
09Hardening and tuning

Security and Performance for Django

Security

  • Keep SECRET_KEY out of the repository; read it from the environment.
  • Set SESSION_COOKIE_SECURE and CSRF_COOKIE_SECURE to True once HTTPS works.
  • Allow database connections only from the server itself.
  • Keep Django and your packages updated; security releases matter.

Performance

  • Size Gunicorn workers to your cores and RAM, and test under load.
  • Set CONN_MAX_AGE for persistent database connections.
  • Cache expensive pages and queries with Redis.
  • Serve static and media files from NGINX, not from Django.

Built from the official documentation

VPS Plans

VPS Plans for Django

VPS-1 runs a small Django site with PostgreSQL. Busier apps, Celery workers or several projects do better on VPS-2 or above.

VPS-1

Small websites, APIs, bots and development servers.

₹1,008 /mo
Get Started
  • 2 vCores
  • 4 GB RAM
  • 40 GB NVMe
  • 500 Mbps
  • Full root and SSH access
  • Free initial stack installation
  • Server hardening and firewall setup
  • Daily backup of the previous 24 hours
  • Unlimited traffic *
  • Anti-DDoS protection
  • Dedicated IPv4 and IPv6
  • KVM virtualisation

VPS-3

Busy stores, SaaS products and several projects.

₹2,748 /mo
Get Started
  • 6 vCores
  • 12 GB RAM
  • 100 GB NVMe
  • 2 Gbps
  • Full root and SSH access
  • Free initial stack installation
  • Server hardening and firewall setup
  • Daily backup of the previous 24 hours
  • Unlimited traffic *
  • Anti-DDoS protection
  • Dedicated IPv4 and IPv6
  • KVM virtualisation

VPS-4

High-traffic apps, large databases and agencies.

₹5,274 /mo
Get Started
  • 8 vCores
  • 24 GB RAM
  • 200 GB NVMe
  • 3 Gbps
  • Full root and SSH access
  • Free initial stack installation
  • Server hardening and firewall setup
  • Daily backup of the previous 24 hours
  • Unlimited traffic *
  • Anti-DDoS protection
  • Dedicated IPv4 and IPv6
  • KVM virtualisation

* Unlimited traffic in Europe and North America. In Mumbai, Singapore and Sydney a monthly allowance applies (VPS-1 500 GB, VPS-2/VPS-3 1 TB, VPS-4 3 TB), then speed is limited to 10 Mbps until the next month.

Prices exclude 18% GST, which is added to invoices for customers in India.

10Under the hood

Platform specs and locations

The same KVM platform on every plan; only CPU, RAM, storage and port speed change.

Virtualisation
KVM with reserved vCores and RAM
Storage
NVMe SSD on every plan
Network
Dedicated IPv4 and IPv6, 500 Mbps to 3 Gbps per plan
Operating systems
Ubuntu 26.04, 24.04 and 22.04 LTS · Debian 13, 12 and 11 · AlmaLinux · Rocky Linux · Fedora · FreeBSD
Access
Full root over SSH, key-based login
Backups
Automatic daily backup of the previous 24 hours; snapshots and longer retention on request
Protection
Always-on anti-DDoS mitigation
Availability
99.9% uptime SLA

Asia-Pacific

  • Mumbai
  • Singapore
  • Sydney

Europe

  • London
  • Limburg
  • Roubaix
  • Gravelines
  • Strasbourg
  • Milan
  • Warsaw

North America

  • Beauharnois

Availability per location changes with demand; we confirm your location before setup. In Mumbai, Singapore and Sydney each plan includes a monthly traffic allowance (VPS-1 500 GB, VPS-2 and VPS-3 1 TB, VPS-4 3 TB); beyond it, speed is limited to 10 Mbps until the next month.

Django VPS FAQs

Questions before you deploy

Not covered here? Ask an engineer before you order.

Ready when you are

Put Your Django Project Live

Choose a plan and we hand over Python, Gunicorn, NGINX and PostgreSQL on a hardened server, ready for your code.