> ## Documentation Index
> Fetch the complete documentation index at: https://docs.dograh.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Deployments

> Options for self-hosting Dograh — from a local Docker install to a production remote server with a custom domain.

Dograh is self-hosted with Docker. Everything ships as two images (`dograh-api` and `dograh-ui`) plus Postgres, Redis, and MinIO, orchestrated with Docker Compose. Pick the deployment path that matches what you're trying to do:

| Path              | Use it when                                                                                                                             | Guide                                                                     |
| ----------------- | --------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------- |
| **Local Docker**  | You want to try Dograh on your own machine. No public URL, no telephony.                                                                | [Docker → Option 1](/deployment/docker#option-1-local-docker-deployment)  |
| **Remote server** | You want a real server reachable from the internet, with HTTPS out of the box (via a free `sslip.io` certificate — no domain required). | [Docker → Option 2](/deployment/docker#option-2-remote-server-deployment) |
| **Custom domain** | You already have a remote deployment and want your own domain (e.g. `voice.yourcompany.com`) instead of the `sslip.io` URL.             | [Custom Domain](/deployment/custom-domain)                                |
| **Heroku**        | One-click PaaS deployment.                                                                                                              | [Heroku](/deployment/heroku) — coming soon                                |

Browsers treat microphone access as a secure-context feature, so the app must be served over HTTPS — or accessed at localhost/127.0.0.1 over HTTP, which is also a secure context. Local Docker uses `http://localhost:3010` and therefore does not need a certificate.

## After you deploy

Once the platform is running, these guides cover keeping it running:

* [**Authentication**](/deployment/authentication) — switch from the built-in local email/password provider to Stack Auth for social login.
* [**Scaling**](/deployment/scaling) — run multiple FastAPI workers behind nginx for higher call throughput.
* [**Update**](/deployment/update) — move an existing deployment to a newer Dograh version.

## Where to start

1. **Kicking the tires?** Start with [local Docker](/deployment/docker#option-1-local-docker-deployment) — running in a few minutes, no server needed.
2. **Putting it in front of real callers?** Use [remote server deployment](/deployment/docker#option-2-remote-server-deployment), then layer on a [custom domain](/deployment/custom-domain) if you want one.
3. **Already running and need to upgrade?** Go straight to [Update](/deployment/update).
4. **Expecting high call volume?** Read [Scaling](/deployment/scaling) once your base deployment is live.

## Related

* [Contribution: Setup](/contribution/setup) — for developing on Dograh itself rather than deploying it
* [Environment Variables](/developer/environment-variables)
