Loading page...Загружаем страницу...正在加载页面...
AtlasRepo

My SaaS Runs on €12 a Month. Here's the Full Stack

Description and use

The SaaS runs on a single Hetzner VPS for about €12/month, leveraging Docker Compose, Cloudflare Free Tier, and free GitHub services to keep costs low and simplify scaling.

Problem

How to run a SaaS with minimal operational cost while maintaining functionality and scalability.

Outcome

Operational cost reduced to ~€12/month by consolidating services onto a single VPS, using free tiers, and avoiding managed services.

Workflow

  • 1. Provision a Hetzner CPX31 VPS (4 vCPU, 8 GB RAM).
  • 2. Install Docker and Docker Compose.
  • 3. Deploy eight containers via a single docker-compose.yml (app, celery, postgres, redis, grafana, prometheus, cadvisor, node-exporter).
  • 4. Configure nginx as reverse proxy on the VPS.
  • 5. Set up Cloudflare DNS for three domains and enable free SSL with Origin Certificates.
  • 6. Use Porkbun for domain registration and amortize yearly cost into monthly budget.
  • 7. Run the SaaS locally with docker compose up -d after cloning the repo.
  • 8. Monitor with Grafana and Prometheus on the same VPS.
  • 9. Scale by adding managed Postgres, separate Celery worker, read replica, or paid Cloudflare tier as usage grows.

Evidence

Hetzner CPX31 (Nuremberg) – €11.49 – runs the entire platform

Source

No managed Postgres. No managed Redis. No Kubernetes. No CDN paid tier.

Source

The Hetzner CPX31 runs eight Docker containers via a single docker-compose.yml

Source

  • Record date: 2026-09-05T19:14:57.535Z