Déployer Next.js
Déployez une application Next.js existante comme processus Node.js persistant. Les pages statiques, les routes rendues côté serveur et les routes API peuvent être livrées dans la même application.
Utilisez la Page de déploiement Next.js pour vérifier l’adéquation à la production, les tarifs, les modèles et les contrôles de mise en ligne avant de suivre les étapes d’implémentation ci-dessous.
Vous partez d’un dossier vide ? Suivez le tutoriel complet de création et de déploiement Next.js, ou utilisez le Processus de création d’applications avec l’aide de l’IA pour Codex, ChatGPT, Gemini, et Claude.
Prérequis
- Un projet Next.js qui s’installe et se compile depuis une copie propre du dépôt
- Un script de démarrage de production, comme
next start - Le CLI Adios installée et authentifiée
1. Ajouter une route de santé
Pour un projet App Router, ajoutez app/api/health/route.js:
export function GET() {
return Response.json({ status: "ok" });
}
La route doit renvoyer une réponse de réussite lorsque l’application est prête à recevoir du trafic. Si elle dépend d’une base de données ou d’un autre service requis, déterminez si la réponse de santé doit aussi vérifier cette dépendance.
2. Configurer l’environnement d’exécution
Créez adios.yaml à la racine du projet :
name: my-nextjs-app
region: de
replicas: 1
build_cmd: npm ci && npm run build
start_cmd: npm start
runtime:
name: node@24
port: 3000
health_path: /api/health
memory_mb: 1024
Conservez le gestionnaire de paquets et le fichier de verrouillage déjà utilisés par votre projet. Pour pnpm, remplacez les champs de commande par les commandes pnpm équivalentes :
build_cmd: pnpm install --frozen-lockfile && pnpm build
start_cmd: pnpm start
Adaptez la version de Node.js, le port, la mémoire, la région et le chemin de santé à l’application. Consultez la référence du manifeste pour tous les champs pris en charge.
Choisir le compilateur
Adios exécute la commande de compilation de votre projet. Vous pouvez utiliser webpack ou Turbopack. Pour les projets Next.js compatibles, nous recommandons d’essayer Turbopack pour réduire le temps de compilation. Choisissez-le dans le fichier package.json:
{
"scripts": {
"build": "next build --turbopack"
}
}
Gardez next build --webpack si votre application dépend de plugins ou d’une configuration webpack. Consultez Compatibilité Next.js et testez vos pages, routes API et fichiers générés avant de changer de compilateur.
Si vous déployez .next/standalone/server.js, gardez output: "standalone" dans votre configuration Next.js. Le traçage des dépendances identifie les fichiers requis par ce package serveur ; Turbopack produit toujours ces dépendances par son propre processus de compilation. Supprimer la sortie standalone ne désactive pas automatiquement le traçage Next.js et nécessite un autre package de déploiement.
3. Ajouter la configuration et les secrets
La configuration publique d’exécution peut être déclarée dans le manifeste. Gardez les valeurs sensibles hors de Git et référencez-les par leur nom :
env:
NEXT_PUBLIC_APP_URL: https://app.example.com
DATABASE_URL: secret://DATABASE_URL
AUTH_SECRET: secret://AUTH_SECRET
Créez les valeurs des secrets référencés avec la CLI ou l’IDE web avant que l’application n’en ait besoin à l’exécution.
4. Déployer
Lancez le déploiement depuis la racine du projet :
adios up
Adios envoie le code source actuel, exécute la commande de compilation, démarre le processus de production, vérifie /api/health, puis promeut la version lorsqu’elle est déclarée saine. Le déploiement renvoie une route HTTPS générée.
5. Contrôler et vérifier
Distinguez le résultat de compilation des sorties du processus en cours d’exécution :
adios logs --build
adios logs --runtime
Ouvrez la route générée et vérifiez une page statique, une page rendue côté serveur et chaque route API dont dépend l’application. Si la compilation ou le contrôle de santé échoue, consultez le flux de journaux correspondant avant de déployer la version suivante.
Domaines personnalisés
Une fois la route générée fonctionnelle, associez et vérifiez le nom d’hôte de production. Adios gère TLS pour le domaine vérifié et le garde lié à la version promue. Suivez Domaines et redirections pour l’ordre de configuration DNS et de vérification.
Démarrer à partir d'un modèle
Si vous n’avez pas de dépôt existant, choisissez une application de départ Next.js officielle en JavaScript ou TypeScript, avec npm ou pnpm, dans le catalogue de modèles.