déployer une application next.js sur aws lambda avec serverless framework
21/12/2025
Dans cet article technique, nous allons voir comment transformer votre application Next.js en fonction AWS Lambda à l’aide de Serverless Framework. Vous bénéficierez d’une mise à l’échelle quasi instantanée, de coûts maîtrisés et d’une maintenance simplifiée.
prérequis
- Node.js v16+ et NPM ou Yarn
- Un compte AWS avec des droits IAM pour déployer des fonctions Lambda
- Serverless Framework installé globalement :
npm install -g serverless - Votre code Next.js (voir Technologie Next.js)
- Configuration AWS CLI configurée (
aws configure)
étape 1 : initialiser le projet next.js
// création d'un nouveau projet
npx create-next-app my-serverless-app
cd my-serverless-app
// installer le plugin serverless
npm install --save-dev serverless serverless-nextjs-plugin
étape 2 : configurer serverless framework
Créez un fichier serverless.yml à la racine :
service: my-next-serverless
provider:
name: aws
runtime: nodejs16.x
region: eu-west-1
memorySize: 512
timeout: 10
plugins:
- serverless-nextjs-plugin
functions:
nextApp:
handler: handler.render
Le plugin serverless-nextjs-plugin détecte automatiquement vos pages et génère les endpoints API/SSR.
étape 3 : déployer sur aws lambda
- Connexion AWS (profil par défaut) :
export AWS_PROFILE=default
- Déploiement :
serverless deploy --stage prod
Vous verrez en sortie l’URL de votre application serverless :
https://xyz123.execute-api.eu-west-1.amazonaws.com/prod
bonnes pratiques et optimisation
- Gestion du cold start : passez
memorySizeà 512 Mo ou plus pour réduire la latence (cold start ~200 ms sur 512 Mo vs ~400 ms sur 128 Mo). - Mise en cache : utilisez CloudFront pour mettre en cache vos pages statiques et allèger Lambda.
- Monitoring : activez les logs CloudWatch et créez des alarmes sur la durée d’exécution et le taux d’erreur.
- CI/CD : intégrez
serverless deploydans GitHub Actions ou Jenkins pour un pipeline automatisé.
exemple de métriques observées
| Configuration | Cold start | Coût mensuel estimé |
|---|---|---|
| 128 Mo / timeout 10 s | 380 ms | ≈ 5 € pour 1 M d’invocations |
| 512 Mo / timeout 10 s | 210 ms | ≈ 12 € pour 1 M d’invocations |
conclusion
En quelques commandes, vous obtenez une application Next.js scalable et économique sur AWS. Pour aller plus loin, pilotez vos déploiements avec un pipeline CI/CD ou explorez nos offres de développement d’application web chez Novane. N’hésitez pas à nous contacter pour un accompagnement sur mesure.

