Docker (local Redis)
Run Redis for BullMQ workers locally with Docker Compose, configure REDIS_* for development, and start worker processes.
Connect your agent today
Draft from chat, review in your calendar, and publish only what you approve.
Overview
Workers can only safely point at one running Redis instance at a time. To avoid sharing the same Redis between local dev and production, run a local Redis with Docker and keep NODE_ENV set to development when running workers locally.
Run Redis with Docker Compose
# From repo root
docker compose -f infra/docker-compose.yml up -d redis Then set (or confirm) the local Redis settings in backend/.env.development.local:
NODE_ENV=development
REDIS_HOST=localhost
REDIS_PORT=6379
REDIS_PASSWORD=
REDIS_DB=0
REDIS_BULLMQ_DB=0
REDIS_TLS=false
REDIS_TLS_REJECT_UNAUTHORIZED=true To stop Redis:
docker compose -f infra/docker-compose.yml down Variable details and TLS setups for managed Redis are documented under Redis cache (shared with the API).
Run workers locally (tsx)
From the repository root (after install):
pnpm orchestrator:dev:worker:integration-refresh-bullmq
pnpm orchestrator:dev:worker:notification-email-bullmq
pnpm orchestrator:dev:worker:scheduled-social-post-bullmq Backend build and imports
Workers import the backend package. If you change backend code that a worker uses, rebuild the backend (for example
pnpm --filter backend build) before restarting the worker.