[phases.setup] nixPkgs = ["nodejs_22", "openssl"] [phases.install] # On installe tout pour le build cmds = ["npm ci"] [phases.build] # On build, on prépare le standalone, et on nettoie TOUT le reste # Le "&&" est important pour que tout se passe dans la même couche logicielle cmds = [ "npm run build", # On vérifie si 'public' existe avant de copier, sinon on passe à la suite sans erreur "[ -d public ] && cp -r public .next/standalone/public || echo 'Pas de dossier public trouvé'", # Idem pour static "[ -d .next/static ] && cp -r .next/static .next/standalone/.next/static || echo 'Pas de dossier static trouvé'", "find . -maxdepth 1 ! -name '.next' ! -name '.' -exec rm -rf {} +" ] [start] # On pointe vers le serveur optimisé cmd = "node .next/standalone/server.js"