Skip to main content

Requirements

Premora Core runs as a single-box Docker Compose stack — the omnibus image plus a few sidecars. There is no Kubernetes, Helm, or cluster to operate. One deployment serves one enterprise customer.

Host

A single Linux host (a VM in your VPC is typical) with:

  • Docker Engine (or Docker Desktop for evaluation)
  • Docker Compose v2 (the docker compose subcommand)
  • enough resources for the workload — start with 8 vCPU / 16 GB RAM / 100 GB disk and size up for large corpora
  • outbound HTTPS to dist.premora.dev for connected installs, or offline media for air-gap

Validate the host at any time:

premora doctor

That's the whole prerequisite list. kubectl, helm, and a cluster are not required.

What runs on the box

premora core install brings these up with Docker Compose:

ServiceRole
omnibusEvery Premora business service (identity, connectors, ingest, knowledge, search, analyst workbench, audit) co-booted in one process.
api-gatewayThe single public entry point; terminates auth and proxies to the omnibus.
web + BFFsThe Nuxt web client and its backends.
PostgreSQLOperational state, one logical database per service.
MinIOObject storage for raw source blobs.
RabbitMQDurable background workflows and events.

A one-shot migrate step applies all database migrations before the omnibus starts.

Optional add-ons

  • Vector search — search defaults to keyword/Postgres; an OpenSearch/Qdrant vector store can be added for semantic retrieval.
  • Premora Inference — a separate GPU host that fronts vLLM for private on-prem inference. It runs on its own machine; if you use a customer-provided model endpoint, it is not required.

Network & supply chain

Premora installs from signed, versioned artifacts — never source checkouts:

  • Connected — pull the installer and the license-gated bundle from dist.premora.dev over HTTPS.
  • On-prem mirror — mirror the distribution host internally and point the CLI at it.
  • Air-gapped — read the installer binary and the bundle from offline media (USB).

Customer environments never need GitHub, GHCR, or npm credentials. Choose the model that matches your egress policy, then continue to Installation.