Skip to main content
A Docker Compose install reads its settings from .env in the install directory (./pipeshub by default). The installer writes that file and generates the secrets. The full list with comments is deployment/docker-compose/env.template in the pipeshub-ai repository. The default given for each variable is the value Docker Compose uses when the variable is not in .env. “Empty” means the service’s built-in behaviour applies.

Applying a change

  1. Edit .env in the install directory.
  2. From that directory, recreate the containers:
    Use the value of COMPOSE_PROJECT_NAME in .env if you changed the project name.
./install.sh --reconfigure runs the wizard again and rewrites .env from scratch. It keeps the existing secrets and saves the old file as .env.bak.<timestamp>, but check that any variable you added by hand, such as TELEMETRY_COLLECTION_FLAG=false, is still there afterwards. The installer starts the containers once it has written the file, so to add your settings first, run ./install.sh --reconfigure --print-env-only, edit .env, then start PipesHub with the command it prints.
Do not change SECRET_KEY or a database password on an existing install. The databases were created with them, and stored settings are encrypted with SECRET_KEY.

Required

The installer generates all of these. Set them yourself only if you write .env by hand.

Core

Signing secrets and tokens

Rate limits and proxies

See Rate limits and API errors for how each limit counts.

Backends

Each backend variable must agree with COMPOSE_PROFILES. A backend whose profile is missing is not running, and a profile with no matching backend starts a container nothing uses. Other profiles: sandbox (coding sandbox; leave it out for eval), search-searxng (needs SEARXNG_SECRET) and fetch-crawl4ai (needs CRAWL4AI_API_TOKEN). See Web Search.

Redis Streams

Memory and databases

Indexing and parsing

Leave these unset unless you are tuning a known bottleneck. Empty values let the services size themselves from the CPU and memory limits. env.template also lists GOVERNOR_* and INDEXING_SPLIT_LEASE_POOLS resource-governor settings. Leave them empty.

Search and answers

Code graph

Network and security

Air-gapped hosts

See Private Cloud & On-Premises.

Installer variables

These are read by install.sh itself, for scripted installs. They are not written to .env unless noted.