Skip to content

Latest commit

 

History

History
110 lines (75 loc) · 2.28 KB

File metadata and controls

110 lines (75 loc) · 2.28 KB

Docker Run Modes

DocIngest uses Docker Compose for local infrastructure. Pick the mode that matches what you want to run.

Run Everything Local

Use this when you want the local crawl/search stack in one command:

docker compose --profile firecrawl --profile tools up -d

This starts:

  • Redis for DocIngest search/cache
  • Redis Commander at http://localhost:8082
  • Firecrawl API at http://localhost:3002
  • Dedicated Firecrawl Redis for crawl queues and rate limiting
  • Firecrawl Playwright service
  • Firecrawl RabbitMQ
  • Firecrawl Postgres

Use these backend env vars:

FIRECRAWL_API_URL=http://localhost:3002/v1
REDIS_HOST=localhost
REDIS_PORT=6380

Then run the DocIngest app:

cd server
npm start
npm run dev-start

Run Only Redis

Use this when you are using hosted Firecrawl or another crawl provider, but still want local fast search/cache:

docker compose up -d redis

Use these backend env vars:

REDIS_HOST=localhost
REDIS_PORT=6380

Run Redis With UI

Use this when you want to inspect Redis locally:

docker compose --profile tools up -d

Open:

http://localhost:8082

Run Redis And Firecrawl Without UI

Use this when you want the full crawl/search stack but do not need Redis Commander:

docker compose --profile firecrawl up -d

Hosted Or External Services

Use this when Redis and Firecrawl are already running somewhere else:

REDIS_HOST=your-redis-host
REDIS_PORT=6379
REDIS_PASSWORD=your-password
FIRECRAWL_API_URL=https://api.firecrawl.dev/v1
FIRECRAWL_API_KEY=fc-your-api-key

Stop Services

docker compose --profile firecrawl --profile tools down

Add -v only when you intentionally want to remove local Redis and Firecrawl Postgres data:

docker compose --profile firecrawl --profile tools down -v

Redis Separation

The Compose stack uses two Redis services on purpose:

  • redis stores DocIngest autocomplete, search, and cached docs with an allkeys-lru policy.
  • firecrawl-redis stores Firecrawl queue/rate-limit data with a noeviction policy.

Keeping them separate prevents crawler queue keys from being evicted by search/cache pressure and keeps DocIngest search cache tuning independent from Firecrawl job durability.