Skip to content

Self-hosting Opentra

Opentra runs on your own VM or server. You get the full database and complete control of your data.

  • 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
Terminal window
# on your host
git clone <your-opentra-repo> opentra && cd opentra
cp .env.example .env # fill in secrets + integration keys
docker compose up -d

A 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.io

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.

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.