Déployer Next.js : Vercel vs VPS vs Docker — comparaison complète 2026
Déployer une application Next.js peut se faire sur Vercel, un VPS auto-hébergé, ou via Docker. Ce guide compare les coûts, la complexité, les performances et les cas d'usage pour chaque option de déploiement Next.js en 2026.
Next.js a été créé par Vercel, sa plateforme de déploiement “officielle”. Mais est-ce vraiment la meilleure option pour tous les projets ? Voici une comparaison honnête des trois principales approches de déploiement.
Vercel : le déploiement “zero config”
Vercel est optimisé pour Next.js — ce qui fait sens puisque Vercel développe Next.js. Les avantages sont réels : déploiement en 30 secondes depuis GitHub, CDN Edge mondial, SSL automatique, preview deployments par branche, optimisation d’images intégrée, analytics Core Web Vitals. Zéro configuration serveur à gérer.
Tarifs : le plan gratuit (Hobby) convient aux projets personnels. Le plan Pro est à 20 $/mois et inclut les fonctionnalités d’équipe. Pour une application en production avec du trafic significatif, les coûts peuvent monter rapidement avec les surcharges de bande passante et les invocations de fonctions serverless (0,60 $/million).
Limite principale : les fonctions serverless ont un timeout de 15 secondes (60 secondes sur Pro). Si votre application fait des traitements longs (génération de PDF, appels API lents), Vercel peut ne pas convenir.
VPS auto-hébergé (Hetzner, OVH, DigitalOcean)
Un VPS vous donne un contrôle total sur l’infrastructure. Next.js tourne en mode Node.js standard sur un VPS. Avec PM2 comme gestionnaire de processus :
# Build
npm run build
# pm2.config.js
module.exports = {
apps: [{
name: 'nextjs',
script: 'node_modules/.bin/next',
args: 'start -p 3000',
instances: 'max',
exec_mode: 'cluster'
}]
};
pm2 start pm2.config.js
pm2 save && pm2 startup
Ajoutez Nginx en reverse proxy, Certbot pour SSL, et vous avez une configuration production solide. Coût : à partir de 5 €/mois (Hetzner CX22) pour un petit projet, 15-30 €/mois pour une application sérieuse.
Avantage VPS : coût maîtrisé, pas de timeout sur les fonctions, possibilité d’installer n’importe quel service (Redis, Postgres, workers), pas de vendor lock-in.
Docker : portabilité maximale
Dockerfile pour Next.js (mode standalone pour minimiser la taille de l’image) :
FROM node:20-alpine AS builder
WORKDIR /app
COPY package*.json .
RUN npm ci
COPY . .
RUN npm run build
FROM node:20-alpine AS runner
WORKDIR /app
ENV NODE_ENV production
COPY --from=builder /app/.next/standalone ./
COPY --from=builder /app/.next/static ./.next/static
COPY --from=builder /app/public ./public
EXPOSE 3000
CMD ["node", "server.js"]
Dans next.config.js, activez le mode standalone : output: 'standalone'. L’image Docker finale pèse 50-100 Mo au lieu de 500+ Mo.
Comparaison des coûts sur 12 mois
Pour un projet avec 50 000 visiteurs/mois :
- Vercel Pro : 20 $/mois de base + surcharges éventuelles = 240-500 $/an
- VPS Hetzner CX32 : 15 €/mois = 180 €/an
- Render.com (alternative Vercel) : 7 $/mois = 84 $/an
- Railway.app : environ 5-20 $/mois selon l’utilisation
Verdict selon votre situation
Vercel : projets side, startups early-stage, agences qui facturent l’infrastructure au client, équipes sans DevOps.
VPS : applications avec trafic prévisible, budget contraint, besoin de services additionnels (base de données, queues), équipes avec compétences DevOps.
Docker sur VPS ou Kubernetes : applications enterprise, microservices, besoin de scaling horizontal précis, CI/CD sophistiqué.