Monitoring & Diagnostics

Running the Doctor

A one-click diagnostic pass over a server or app, with a plain-English checklist.

Doctor runs a checklist of real checks over SSH and reports what's healthy and what isn't — no guessing from a red icon alone.

What it checks

Doctor runs 9 checks covering things like: Docker is reachable, the shared edge network exists, the reverse proxy container is running, a route file exists for the app's domain, the app's container is actually reachable from inside the edge network, disk space isn't critically low, and a few more infrastructure-level checks in the same spirit.

Each check reports pass/fail with a short explanation — not just a number.

Where to run it

  • Per-app, from the app's Doctor tab — scoped to that app's networking and container health.
  • Per-server, for infrastructure-level checks not tied to one specific app.

Reading a failure honestly

A couple of failure modes are worth knowing about rather than being surprised by:

  • "Reachable inside the edge network" failing on an adopted app usually isn't a real bug — it means the app's recorded service name is a lazy default that doesn't match what the actual container calls itself, since DeployOS didn't create that container. It self-corrects the moment you deploy that app through DeployOS for real.
  • Doctor's checks are currently Traefik-oriented. If your server uses Caddy, a couple of Traefik-specific checks may not apply cleanly yet — treat those as informational rather than a real failure if you know the server is running Caddy and traffic is actually flowing.

If Doctor reports a missing route file after you know you deployed successfully, it's usually the same underlying issue Domains & SSL covers — re-running Bootstrap on that server (see Bootstrapping a Server) re-checks and fixes proxy-config-path mismatches non-destructively.