Skip to main content

Local Development with the Devserver Image

For trying QuantumBPM on your own machine — without signing up for SaaS and without standing up the full self-hosted stack — we ship a single Docker image that bundles every piece of the platform behind one process. This is the fastest way to model a decision or run a BPMN process locally.

Not for production use

The devserver image is for local development and evaluation only. It runs with authentication disabled, an embedded single-node Postgres, and an embedded Temporal server in the same process — none of which are intended for production traffic, multi-tenant data, or anything you can't afford to lose. For real deployments use the managed SaaS or self-host the production images.

Quickstart

docker run --rm \
-p 9060:9060 \
-v quantumbpm-devserver:/var/lib/devserver \
hub.quantumbpm.com/quantumbpm-public/devserver:latest

Then open http://localhost:9060. The named volume keeps your projects, definitions, and execution history across container restarts; drop the -v flag for a fully ephemeral run.

The first start takes a few extra seconds while embedded Postgres initializes its data directory. Subsequent starts against the same volume come up immediately.

What's Bundled

The image ships four components inside one process:

ComponentPurpose
BackendThe full QuantumBPM REST API (DMN evaluation, BPMN runtime, projects, history).
SPAThe web console, served from the same port as the API.
Embedded PostgresApplication database. Data persists in DEVSERVER_DATA_DIR.
Embedded TemporalDurable execution engine for BPMN workflows. Runs in-process.

Authentication is disabled — every request is treated as the local developer. There is no organization model, no RBAC enforcement, and no billing path.

Configuration

Only two environment variables are honored. Everything else is hardcoded inside the binary.

VariableDefault (in container)Purpose
DEVSERVER_PORT9060HTTP port the bundled server listens on. Remember to update the -p mapping if you change it.
DEVSERVER_DATA_DIR/var/lib/devserverWhere embedded Postgres and Temporal persist state. Mount a volume here for cross-restart persistence.

Example with a custom port and a host bind-mount:

mkdir -p ./qbpm-data
docker run --rm \
-e DEVSERVER_PORT=8080 \
-p 8080:8080 \
-v "$PWD/qbpm-data:/var/lib/devserver" \
hub.quantumbpm.com/quantumbpm-public/devserver:latest

Resetting State

To wipe everything and start over:

docker volume rm quantumbpm-devserver

…or rm -rf the host directory if you bind-mounted instead.

When to Move Off the Devserver

The devserver is the right tool when you want to:

  • Try the platform end-to-end on a laptop without internet roundtrips.
  • Demo a model offline.
  • Develop and debug an SDK integration against a real backend.

Move off the devserver when you want to:

  • Run QuantumBPM in production — the devserver disables authentication, runs a single-node embedded Postgres in the same process, and is not a supported production target.
  • Share a workspace across multiple users, with real organization and RBAC enforcement.
  • Persist execution history reliably across restarts of multiple replicas.
  • Get production support, an SLA, or compliance commitments.

For these, move to the managed SaaS (onboarding) — or to the self-hosted build when you have data residency, compliance, or air-gap requirements. Talk to us at support@quantumbpm.com for both options.