# ADR-015 : Hébergement

**Statut** : Accepté
**Date** : 2025-01-25

## Contexte

RoadWave nécessite une infrastructure cloud hébergée dans l'UE (conformité RGPD) avec PostgreSQL+PostGIS, Redis et stockage objet. L'objectif est de minimiser les coûts en phase MVP tout en gardant une évolutivité vers des services managés.

## Décision

**OVH VPS** avec services self-hosted via Docker Compose pour le MVP.
Migration vers **Scaleway** (services managés) prévue en phase de croissance.

## Alternatives considérées

| Solution | Coût MVP/mois | Simplicité ops | PostGIS | Redis managé | RGPD |
|----------|---------------|----------------|---------|--------------|------|
| **OVH VPS** | ~14€ | Moyenne | Self-hosted | Self-hosted | Oui |
| Scaleway managé | ~67€ | Élevée | Oui | Oui | Oui |
| Clever Cloud | ~120€ | Très élevée | Oui | Oui | Oui |
| Infomaniak | ~50€ | Élevée | Non | Non | Suisse |

## Justification

- **Économie** : 5x moins cher que les services managés (~14€ vs ~67€)
- **Suffisant pour MVP** : VPS 4GB RAM supporte facilement 10-20K users
- **Docker Compose** : Stack reproductible, backups automatisables
- **RGPD** : Datacenters OVH en France
- **Migration simple** : Passage vers Scaleway managé sans refonte

## Stack MVP

```
OVH VPS Essential (12.50€/mois)
├── Go + Fiber (app)
├── PostgreSQL 16 + PostGIS 3.4 (Docker)
├── Redis 7 (Docker)
├── NGINX Cache (distribution HLS)
└── Backups quotidiens (cron + pg_dump)

OVH Object Storage (~1.20€/100GB)
└── Fichiers audio source
```

## Roadmap Infrastructure

| Phase | Users | Infrastructure | Coût | Trigger migration |
|-------|-------|----------------|------|-------------------|
| **MVP** | 0-20K | OVH VPS + Docker Compose | ~14€ | Aucun |
| **Croissance** | 20-100K | Scaleway services managés (PostgreSQL, Redis) | ~100€ | CPU > 70% OU MRR > 2000€ |
| **Scale** | 100K+ | Scaleway Kubernetes (Kapsule) | ~500€ | Auto-scaling OU multi-région |

**Triggers détaillés** :
- **Phase 2** : CPU > 70% (7j), latence p99 > 100ms, backups > 1h/semaine, MRR > 2000€
- **Phase 3** : Auto-scaling horizontal requis, multi-région Europe, DevOps dédié, > 5 services

**Note** : Migrations déclenchées par métriques réelles, pas calendrier fixe.

## Conséquences

- Backups PostgreSQL à automatiser (cron + pg_dump)
- Monitoring basique requis (Uptime Kuma ou alertes OVH)
- Sécurité serveur à configurer (UFW, Fail2ban)
- Migration vers services managés à planifier dès revenus stables
