Back

Python VPS Hosting, Pre-Installed

Python VPS hosting here starts you with Python, a virtual environment, Gunicorn and HTTPS already in place. A sample app goes live by itself after payment, and its address appears in your panel. Bring your Flask, FastAPI or plain WSGI code to /home/app/uygulama over SSH and restart it with one command.

How much power do you need?

Total$2.58/mo

Prices include VAT.

Scale RAM and CPU up or down whenever you like. Disk can only grow, so start small.

What's installed on your Python server?

  • Python 3.12 from the Ubuntu 24.04 repository
  • A virtual environment at /home/app/uygulama/venv
  • Gunicorn 26 with 2 workers on 127.0.0.1:8000
  • A systemd service called uygulama that starts at boot and restarts if it crashes
  • HTTPS through Caddy on an sslip.io address based on your IP, so a domain is optional
  • An unprivileged app user, so your code doesn't run as root
  • Firewall with only ports 22, 80 and 443 open

What size do you need for Python?

Python's documentation gives no RAM figure, because your app decides what it needs. Gunicorn loads your app in a separate process for each worker, so memory grows with the worker count. Gunicorn suggests starting with (2 x cores) + 1 workers, and this install runs 2. As a rule of thumb, 1 GB is a good start for a small API, and 2 to 4 GB for several workers or heavy packages. If it isn't enough, grow RAM, CPU and disk separately from your panel, and your data and IP address stay the same.

UseSizePriceChoose
Starter 1 GB RAM · 1 vCore · 25 GB NVMe $2.58/mo
Medium 2 GB RAM · 1 vCore · 40 GB NVMe $4.01/mo
Powerful 4 GB RAM · 2 vCore · 60 GB NVMe $6.89/mo

Who is it for?

  • Developers publishing an API or web app with Flask or FastAPI
  • Projects that have hit Python version or package limits on shared hosting
  • Anyone running a Python app built with AI tools on their own server
  • People running data processing, automation or scheduled scripts

What happens after you order?

  1. Set the size and complete your payment.
  2. Your server starts and Python and Gunicorn install themselves. This took about 3 minutes in our real-server tests.
  3. Open the Site address from the Overview tab. The sample page shows the Python version.
  4. Connect over SSH, type su - app, move to the folder with cd ~/uygulama and bring your code in, for example with git clone.
  5. Install your dependencies: venv/bin/pip install -r requirements.txt
  6. Make wsgi.py provide your application object as app, go back to root with exit and run systemctl restart uygulama.

With every server

  • Daily backups included in the price
  • Unlimited traffic
  • Full root access
  • Scale RAM and CPU up or down later, and grow the disk
  • Location: Istanbul · IST-1.

Good to know

  • Gunicorn runs wsgi:app. For a different module, change the ExecStart line in /etc/systemd/system/uygulama.service and run systemctl daemon-reload.
  • Scaling up doesn't add workers by itself. You change the --workers value in the same service file.
  • To compile C extensions, run apt install build-essential python3-dev as root.
  • Ubuntu and Python security updates install themselves. You update the pip packages in your virtual environment.
  • Your app should listen on 127.0.0.1:8000, and Caddy handles the public address. Opening Gunicorn to the outside bypasses HTTPS.
  • If a certificate can't be issued, the site opens over http on your IP address.

Python questions and answers

How do I deploy my Flask app?

Put your code in ~/uygulama and install dependencies with venv/bin/pip. Make wsgi.py provide your app as app, then run systemctl restart uygulama as root. Or replace wsgi:app in the ExecStart line with project:app, or project:create_app() for an app factory, and run systemctl daemon-reload.

Does FastAPI run on this server?

Yes. FastAPI uses ASGI, and Gunicorn's built-in ASGI worker handles it. In the ExecStart line, replace wsgi:app with --worker-class asgi main:app, then run systemctl daemon-reload and systemctl restart uygulama. Keep the bind address at 127.0.0.1:8000.

How much RAM do I need for Python hosting?

Python has no official RAM figure, since your app and worker count decide. As a rule of thumb, 1 GB is a good start for a small API, and 2 to 4 GB for several workers or data science packages.

Can I change the Python version?

The server comes with Python 3.12 from Ubuntu 24.04. You have root access, so you can install another version too. Recreate the virtual environment with that version, then reinstall your packages and Gunicorn.

Does my app stop when I log out of SSH?

No. Your Python code runs as a systemd service called uygulama. It keeps running after you log out, and it comes back if it crashes or the server restarts. You can read its output with journalctl -u uygulama.

Is this server suitable for Django?

Yes. Gunicorn runs Django too, so you'd put project.wsgi:application in the ExecStart line. If you'd like Django and its settings installed for you, look at the Django server option.

Read more and see similar apps