version: '3.8' # Development setup - SearXNG and Redis only # Run mana-search with `pnpm dev` locally services: # ================================ # SearXNG Meta Search Engine # ================================ searxng: image: searxng/searxng:latest container_name: mana-searxng-dev ports: - "8080:8080" # Exposed for development volumes: - ./searxng/settings.yml:/etc/searxng/settings.yml - ./searxng/limiter.toml:/etc/searxng/limiter.toml environment: SEARXNG_BASE_URL: http://localhost:8080 SEARXNG_SECRET: dev-secret-change-in-production networks: - mana-search-dev restart: unless-stopped healthcheck: test: ["CMD", "wget", "-q", "--spider", "http://localhost:8080/healthz"] interval: 30s timeout: 10s retries: 3 start_period: 15s # ================================ # Redis Cache # ================================ redis: image: redis:7-alpine container_name: mana-search-redis-dev ports: - "6380:6379" # Different port to avoid conflicts command: redis-server --appendonly yes --maxmemory 64mb --maxmemory-policy noeviction volumes: - redis-dev-data:/data networks: - mana-search-dev restart: unless-stopped healthcheck: test: ["CMD", "redis-cli", "ping"] interval: 10s timeout: 5s retries: 3 volumes: redis-dev-data: name: mana-search-redis-dev-data networks: mana-search-dev: name: mana-search-dev driver: bridge