Deploy App

When a deploy fails

What each deploy error means and how to fix it. Your live site keeps running when a deploy fails.

A failed deploy never takes your site down: the previous version keeps running. Open the failed deploy on the Deployments tab: the red box says what went wrong, and the log below shows the details. Or ask the chatbot "why did the last deploy of example.com fail?" — it reads the log for you.

ErrorWhat it meansFix
The build failedYour build command stopped with an error. The line that failed is quotedFix it in the code and push, or adjust the build command in Settings → Advanced
Out of memoryThe server ran out of memory while building (Next.js builds need about 1.5 GB)Add swap (the message shows the commands), or use a bigger server
Disk fullNot enough free disk for the buildFree space; docker system df shows what Docker uses
Didn't answer (unhealthy)The app started but nothing answered on its port within 90 sMake the app listen on 0.0.0.0 and the port in Settings (we pass it as PORT). Or set a health-check path that answers
Stopped right after starting (crash loop)The app exited. Its last lines are in the logUsually a missing environment variable or a database it can't reach
Credential refused / repository not foundThe token expired, can't read this repository, or the URL is wrongGit credentials → Replace token; check the URL
Branch doesn't exist—Check the branch in Settings
No package.json / No DockerfileThe project type doesn't match the code, or the code is in a sub-folderFix the type, or set App folder in Settings → Advanced
Folder / nginx file / domain already exists on the serverSomething not made by the panel already uses that nameRemove or rename the old site on the server, then deploy again. We never overwrite what we didn't create
Port 80 is used by …Another web server (Apache, Caddy…) holds port 80Stop it, or use a server where nginx serves the web
nginx rejected the configurationAnother site's config on the server is broken, so nginx won't reloadNothing was changed. Run nginx -t on the Nginx tab to see which file
The panel restarted during this jobThe deploy was cut offDeploy again; the live version was left serving

Roll back

If a deploy succeeded but the new version misbehaves, open Deployments and press Roll back to this on the last good version. It takes seconds: the last 3 builds are kept on the server, so nothing is rebuilt.