Aller au contenu principal

Annexe: Options d'hébergement

Ce guide présente les différentes options pour héberger votre API Spring Boot, du développement local jusqu'à la production.


1. Développement local (Gratuit)​

Pour le développement et les tests, vous n'avez besoin de rien d'autre que votre ordinateur.

ComposantSolution locale
Application./mvnw spring-boot:run
Base de donnéesH2 (en mémoire)
EmailsMailHog (Docker)
# Démarrer MailHog pour tester les emails
docker run -d -p 1025:1025 -p 8025:8025 mailhog/mailhog

# Démarrer l'application
./mvnw spring-boot:run

# Accéder à l'API: http://localhost:8080
# Voir les emails: http://localhost:8025

Coût: 0$


2. Pourquoi pas Vercel ?​

Vercel est excellent pour les frontends (React, Next.js, Vue) mais ne supporte pas Spring Boot :

CritèreVercelSpring Boot
LangagesNode.js, Python, GoJava
TypeServerless / FrontendBackend traditionnel
JVMNon supportéRequis

Vercel = Frontend | Railway/Render/Heroku = Backend Java

Si vous avez un frontend React + backend Spring Boot :

  • Frontend → Vercel (gratuit)
  • Backend → Railway ou Render (gratuit)

3. Options Cloud gratuites (limités)​

Railway​

CaractéristiqueDétail
URLhttps://railway.app
Gratuit500 heures/mois + 5$ crédit
PostgreSQLInclus gratuitement
DéploiementConnexion GitHub automatique
DifficultéFacile
# Déployer sur Railway
# 1. Connecter votre repo GitHub
# 2. Railway détecte Spring Boot automatiquement
# 3. Ajouter les variables d'environnement
# 4. Déploiement automatique!

Render​

CaractéristiqueDétail
URLhttps://render.com
Gratuit750 heures/mois (spin down après 15 min)
PostgreSQLGratuit 90 jours
DéploiementGitHub ou Docker
DifficultéFacile

Fly.io​

CaractéristiqueDétail
URLhttps://fly.io
Gratuit3 VMs partagées
PostgreSQL3GB gratuit
DéploiementCLI ou Dockerfile
DifficultéMoyen

4. Hébergement VPS pas cher​

Hostinger VPS​

PlanRAMCPUStockagePrix
KVM 14 GB1 vCPU50 GB4.99$/mois
KVM 28 GB2 vCPU100 GB8.99$/mois
KVM 416 GB4 vCPU200 GB14.99$/mois

Avantages Hostinger:

  • Prix très compétitifs
  • Panel de gestion simple
  • Support 24/7
  • Snapshots gratuits

Installation sur Hostinger VPS:

# 1. Connecter en SSH
ssh root@votre-ip

# 2. Installer Docker
curl -fsSL https://get.docker.com | sh

# 3. Installer Docker Compose
apt install docker-compose -y

# 4. Cloner votre projet
git clone https://github.com/votre-user/votre-projet.git
cd votre-projet

# 5. Démarrer avec Docker
docker-compose up -d

DigitalOcean​

PlanRAMCPUStockagePrix
Basic1 GB1 vCPU25 GB6$/mois
Basic2 GB1 vCPU50 GB12$/mois
Basic4 GB2 vCPU80 GB24$/mois

Bonus: 200$ de crédit gratuit pour les étudiants via GitHub Education.

Hetzner​

PlanRAMCPUStockagePrix
CX112 GB1 vCPU20 GB3.29€/mois
CX214 GB2 vCPU40 GB5.83€/mois
CX318 GB2 vCPU80 GB10.59€/mois

Le moins cher d'Europe!

OVH​

PlanRAMCPUStockagePrix
Starter2 GB1 vCPU20 GB3.50€/mois
Essential4 GB2 vCPU40 GB6.50€/mois

5. Platform as a Service (PaaS)​

Heroku​

PlanDétailPrix
Eco1000 heures/mois partagées5$/mois
BasicToujours actif7$/mois
StandardPerformance25$/mois

PostgreSQL Heroku:

  • Mini: Gratuit (10K lignes)
  • Basic: 9$/mois
  • Standard: 50$/mois

Google Cloud Run​

CaractéristiqueDétail
Gratuit2 millions requêtes/mois
Prix0.00002$/requête après
ScalingAutomatique (0 à N)

Idéal si vous avez peu de trafic!


6. Comparatif des prix​

Options les moins chères​

RangServicePrix/moisType
1Hetzner CX113.29€VPS
2OVH Starter3.50€VPS
3Hostinger KVM 14.99$VPS
4Railway5$ créditCloud
5Heroku Eco5$PaaS
6DigitalOcean6$VPS

Gratuit pour les étudiants​

ServiceOffre étudiante
GitHub EducationDigitalOcean 200$, Heroku, etc.
Azure for Students100$ crédit
Google Cloud300$ crédit
AWS EducateCrédit variable

7. Recommandations par cas d'usage​

Pour un projet étudiant​

Recommandé: Railway ou Render (gratuit)
Alternative: Heroku Eco (5$/mois)

Pour un portfolio personnel​

Recommandé: Hostinger VPS (4.99$/mois)
Alternative: Hetzner (3.29€/mois)

Pour une startup / production​

Recommandé: DigitalOcean ou Hetzner
Alternative: Google Cloud Run (pay-per-use)

8. Configuration pour la production​

Variables d'environnement requises​

# Base de données
DB_HOST=localhost
DB_PORT=5432
DB_NAME=contactdb
DB_USER=postgres
DB_PASSWORD=motdepasse_securise

# Email (exemple avec Gmail)
MAIL_HOST=smtp.gmail.com
MAIL_PORT=587
MAIL_USER=votre@gmail.com
MAIL_PASSWORD=app_password

# JWT
JWT_SECRET=votre_cle_secrete_base64_256bits
JWT_EXPIRATION=86400000

# Admin
ADMIN_EMAIL=admin@votredomaine.com

Avec Nginx (reverse proxy)​

server {
listen 80;
server_name api.votredomaine.com;

location / {
proxy_pass http://localhost:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}

Avec HTTPS (Let's Encrypt)​

# Installer Certbot
apt install certbot python3-certbot-nginx -y

# Obtenir certificat SSL gratuit
certbot --nginx -d api.votredomaine.com

9. Checklist déploiement​

  • Choisir un hébergeur
  • Créer le serveur/instance
  • Installer Docker
  • Configurer les variables d'environnement
  • Déployer avec docker-compose up -d
  • Configurer un nom de domaine (optionnel)
  • Activer HTTPS (optionnel mais recommandé)
  • Tester les endpoints

10. Domaines pas chers​

RegistrarPrix .comPrix .dev
Namecheap~9$/an~15$/an
Porkbun~9$/an~13$/an
Cloudflare~9$/an (coût)~11$/an
OVH~10€/an~15€/an

Astuce: Cloudflare vend les domaines au prix coûtant (pas de marge).


Résumé​

BudgetRecommandation
0$Railway / Render / Local
~5$/moisHeroku Eco ou Hostinger
~10$/moisDigitalOcean ou Hetzner
ÉtudiantGitHub Education (200$ gratuit)

Retour à l'Option E