Skip to main content

Deployment Modes

Sercha Core is a single container image that supports multiple deployment modes, enabling flexible scaling from simple single-container setups to distributed production clusters.

Available Modes

ModeHTTP ServerWorkerSchedulerUse Case
allYesYesYesDevelopment, simple deployments
apiYesNoNoHorizontally scaled API tier
workerNoYesYesDedicated background processing

Configuration

Set the mode via the RUN_MODE environment variable:

services:
sercha-api:
image: sercha-core:latest
environment:
RUN_MODE: api
# ... other config

Quick Examples

Combined Mode (Default)

services:
sercha:
image: sercha-core:latest
environment:
DATABASE_URL: postgres://...
REDIS_URL: redis://...
VESPA_URL: http://...
ports:
- "8080:8080"

Split Mode (API + Workers)

services:
sercha-api:
image: sercha-core:latest
environment:
RUN_MODE: api
# ...
deploy:
replicas: 3

sercha-worker:
image: sercha-core:latest
environment:
RUN_MODE: worker
SCHEDULER_ENABLED: "true"
# ...
deploy:
replicas: 2

Detailed Documentation

For comprehensive guides on each mode:

Next

  • Examples - Complete deployment examples