# Configuração da stack completa (postgres + backend + frontend/nginx). # Baseado em backend/.env e frontend/.env. Não comitar (contém segredos). # --- URLs públicas da stack (usadas por CORS/CSRF no backend e como base de # API no build do frontend). Mantenha a porta igual à de FRONTEND_PORT / # BACKEND_PORT abaixo. --- FRONTEND_URL=http://localhost:8090 BACKEND_URL=http://localhost:8081 # --- Portas publicadas no host --- FRONTEND_PORT=8090 BACKEND_PORT=8081 # --- Postgres --- POSTGRES_DB=leads_extractor POSTGRES_USER=leads POSTGRES_PASSWORD=leads # --- Backend: autenticação --- AUTH_USERNAME=admin AUTH_PASSWORD=12341234 AUTH_SESSION_TTL_SECS=43200 AUTH_COOKIE_SECURE=false AUTH_COOKIE_SAME_SITE=strict # --- Backend: rate limiting --- RATE_LIMIT_ENABLED=true RATE_LIMIT_BURST_SIZE=120 RATE_LIMIT_PERIOD_MS=200 RATE_LIMIT_LOGIN_BURST_SIZE=5 RATE_LIMIT_LOGIN_PERIOD_SECS=30 RUST_LOG=backend=info # --- OpenAI --- OPENAI_API_KEY=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 OPENAI_MODEL=gpt-5.6-luna OPENAI_BASE_URL=https://api.openai.com/v1 OPENAI_TIMEOUT_SECS=120 OPENAI_MAX_RETRIES=6 OPENAI_INPUT_COST_PER_1M_USD=1.00 OPENAI_OUTPUT_COST_PER_1M_USD=6.00 OPENAI_MONTHLY_BUDGET_USD=10.00 # --- DataImpulse (proxy) --- DATAIMPULSE_PROXY_ENABLED=true DATAIMPULSE_PROXY_SCHEME=http DATAIMPULSE_PROXY_HOST=gw.dataimpulse.com DATAIMPULSE_PROXY_PORT=823 DATAIMPULSE_PROXY_USERNAME=ab420266a0261c1c1926 DATAIMPULSE_PROXY_PASSWORD=91044659aacc2fd6 DATAIMPULSE_PROXY_COUNTRY=br DATAIMPULSE_PROXY_STICKY=false # --- Concorrência / limites operacionais --- WORKER_CONCURRENCY=8 BROWSER_CONCURRENCY=4 JOB_POLL_INTERVAL_MS=750 REQUEST_TIMEOUT_SECS=45 BROWSER_TIMEOUT_SECS=75 BROWSER_NO_SANDBOX=true CRAWL_MAX_DEPTH=5 CRAWL_MAX_PAGES_PER_INTERVIEWEE=250 MAX_INTERVIEWEES_PER_RUN=0 # --- Frontend (build-time) --- # A URL da API é derivada de BACKEND_URL acima (ver docker-compose.yml). VITE_API_POLL_INTERVAL=6000 VITE_DEMO_MODE=false