Troubleshooting
Concrete answers for the errors people actually hit. Each linked article has the symptom in the title — match what you're seeing, jump straight there.
Deploys
- Deploy failures — build errors, release-task errors, healthcheck failures, push-rejected.
- "A deploy is already in progress" — there's a stuck or in-flight job. Wait, or check the dashboard's Deployments tab.
ownstack app unlock <app>releases a stale dokku lock. - "App contains an app.json file with a formations key and cannot be manually scaled" — see Scaling processes.
Databases
- Database auth —
password authentication failed could not connect to server: Connection refused— postgres service stopped.ssh dokku@<stack-ip> postgres:status <svc>to check;postgres:start <svc>to revive.FATAL: database "X" does not exist—DATABASE_URLis pointing at the wrong dbname. Runownstack db check; if password_match is true but auth still fails, the dbname is wrong.config:getand look at the path component.
DNS & routing
- DNS & routing — domain attached but not loading; SSL cert not issuing; redirect loops.
Process & runtime
- Container restarts in a loop —
ownstack remote logs --tail 200. The process is crashing on startup. Check stack traces; common causes: missing env var, can't reach DB, bad migration. - Worker not draining queue — confirm worker is scaled (
ssh dokku@<stack-ip> ps:report <app>); check Redis is reachable; checkREDIS_URLis set. - Out of memory — stack instance too small for the workload, or a runaway process. Check
dmesgon the stack via SSH for OOM kills. Either bump the instance or set memory limits per process viadokku resource:limit.
Auth & access
- Wrong profile active — every
ownstackcommand runs against whatever profile is active.ownstack profile showfirst;profile use <name>to switch. - "Permission denied (publickey)" on dokku ssh — your account's SSH key isn't on the stack. Re-provision or paste the public key into
/home/dokku/.ssh/authorized_keysviaownstack ssh stack.
If none of these help
- Check the dashboard's Deployments tab — failure messages are usually richer there than in the CLI output.
- Tail the live runtime log:
ownstack remote logs --tail 200 --follow. - Open a doc issue on GitHub describing the symptom — that's how this section grows.