App won't start
Where to look first
Section titled “Where to look first”Logs tab of the app. uploy captures stdout/stderr from the container, including panics and unhandled exceptions.
Common causes
Section titled “Common causes”Wrong start command
Section titled “Wrong start command”- Symptom:
/bin/sh: <command>: not foundin runtime logs. - Fix: Nixpacks auto-detects a start command. If yours is non-standard, add a
startscript inpackage.jsonor the language equivalent.
Port binding
Section titled “Port binding”- Symptom: App starts but health checks fail.
- Fix: Bind to
0.0.0.0on the port in thePORTenvironment variable. uploy injectsPORTat runtime.
Missing environment variable
Section titled “Missing environment variable”- Symptom: App throws on boot because a required env var is unset.
- Fix: Set it on the app’s Environment tab (see Configure environment variables).
Database not reachable
Section titled “Database not reachable”- Symptom: App boots, immediately fails to connect to Postgres.
- Fix: Confirm a managed Postgres is attached, not just created. Attachment injects
DATABASE_URL. See Database connection errors.
If none of the above matches
Section titled “If none of the above matches”Contact support with the app URL and the last runtime log lines.