Self-hosting Opentra
Opentra runs on your own VM or server. You get the full database and complete control of your data.
Requirements
Section titled “Requirements”- A Linux host (a small VM is plenty for ~10 techs / ~100 clients)
- Docker + Docker Compose
- A PostgreSQL database (bundled in the Compose file, or bring your own)
- A domain/subdomain for the app (e.g.
psa.yourshop.io) with TLS
Deploy
Section titled “Deploy”# on your hostgit clone <your-opentra-repo> opentra && cd opentracp .env.example .env # fill in secrets + integration keysdocker compose up -dA first run migrates the database and starts the web app plus the background worker:
$ docker compose up -d› pulling opentra:stable› db migrate ......... ok› graph ingestion .... ok› xero sync .......... ok● running at https://psa.yourshop.ioConfiguration
Section titled “Configuration”Core settings live in .env and in Settings → Integrations inside the app:
- Auth — Microsoft Entra ID (primary) and Google (secondary) sign-in.
- Email intake — connect Microsoft 365 so inbound mail becomes tickets.
- Accounting — connect Xero for invoicing.
- See Integrations for the full list.
Backups & upgrades
Section titled “Backups & upgrades”Because you host it, back up the PostgreSQL database on your normal schedule. Upgrades pull a new image and re-run migrations on docker compose up -d.
Managed deployment (we run it for you, with an SLA) is available on the Pro + Managed plan — see pricing.