This option deploys Rootprint together with PostgreSQL and a bundled Quickwit instance. Best for getting started quickly or running a self-contained setup.Download the Compose file and start the services:
curl -o docker-compose.yml https://docs.rootprint.io/files/docker-compose.full.yamldocker compose up -d
By default, the self-contained deployment stores index data in the rootprint-quickwit Docker volume on local disk. This is fine for testing, but removing the volume permanently deletes all indexed logs. For a persistent, production-ready setup, configure Quickwit to store index data in S3 (or any S3-compatible object storage).Add the following environment variables to the quickwit service in your docker-compose.yml:
Set both variables to paths within the same bucket. The bucket must already exist. See Quickwit storage configuration for all options, including S3-compatible providers and custom endpoints.
Quickwit also supports Azure Blob Storage, Google Cloud Storage, and S3-compatible providers (MinIO, Garage, DigitalOcean Spaces). The configuration follows the same shape: a URI scheme on QW_DEFAULT_INDEX_ROOT_URI and QW_METASTORE_URI, plus credentials.
HMAC keys via AWS_ACCESS_KEY_ID / AWS_SECRET_ACCESS_KEY
MinIO / Garage / DO Spaces
s3://bucket/path with matching flavor
Provider-specific keys via AWS_ACCESS_KEY_ID / AWS_SECRET_ACCESS_KEY and QW_S3_ENDPOINT
S3-compatible providers need a flavor set on the storage config so Quickwit picks the right path-style and multipart settings. See the Quickwit storage reference for the YAML structure and the full env-var list.
If other services on your internal network need to ingest data directly into Quickwit, publish Quickwit’s ports on the host. In docker-compose.yml, add these port bindings to the quickwit service:
ports: - '7280:7280' - '7281:7281'
Quickwit will then be reachable at http://<host-ip>:7280 from other machines on the same network.
Quickwit has no authentication mechanism. Never expose it on a public or untrusted network.
Restrict access at the network or firewall level and only do this within a private, trusted
network.
Prerequisite: Quickwit 0.9 or later is required. Rootprint relies on Quickwit 0.9
Ingest V2 behavior and does not support 0.8 or earlier. Confirm your instance’s version before
connecting it.
If you already have a Quickwit cluster running, deploy Rootprint with PostgreSQL and point it at your Quickwit instance.Download the standalone Compose file:
Customize the deployment by setting environment variables under the environment key of the rootprint service. See the environment variables reference for the full list, including the database URL, public origin, Quickwit endpoint, and session secret.