Spaces:
Sleeping
Sleeping
| version: "3.8" | |
| services: | |
| vyaparflow: | |
| build: | |
| context: . | |
| dockerfile: Dockerfile | |
| container_name: vyaparflow-hf | |
| ports: | |
| - "7860:7860" | |
| environment: | |
| # βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ | |
| # Application Settings | |
| # βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ | |
| PYTHONUNBUFFERED: "1" | |
| PYTHONDONTWRITEBYTECODE: "1" | |
| PORT: "7860" | |
| # βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ | |
| # Demo Mode (change to false for live LLM) | |
| # βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ | |
| NOTIFLOW_DEMO_MODE: "true" | |
| # βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ | |
| # NVIDIA NIM Configuration | |
| # βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ | |
| NVIDIA_NIM_API_KEY: "${NVIDIA_NIM_API_KEY:-your_api_key_here}" | |
| NVIDIA_NIM_BASE_URL: "https://integrate.api.nvidia.com/v1" | |
| NVIDIA_NIM_MODEL: "deepseek-ai/deepseek-v3.2" | |
| NIM_PRIMARY_MODEL: "deepseek-ai/deepseek-v3.2" | |
| NIM_FALLBACK_MODEL: "deepseek-ai/deepseek-v3.1" | |
| # βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ | |
| # Google Gemini (optional fallback) | |
| # βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ | |
| GEMINI_API_KEY: "${GEMINI_API_KEY:-}" | |
| # βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ | |
| # OpenRouter (optional secondary fallback) | |
| # βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ | |
| OPENROUTER_API_KEY: "${OPENROUTER_API_KEY:-}" | |
| OPENROUTER_MODEL: "deepseek/deepseek-chat" | |
| OPENROUTER_REFERER: "http://localhost:7860" | |
| OPENROUTER_TITLE: "VyaparFlow-Docker" | |
| # βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ | |
| # Google Sheets (optional) | |
| # βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ | |
| GOOGLE_SHEETS_CREDENTIALS: "credentials/sheets.json" | |
| GOOGLE_SHEET_ID: "${GOOGLE_SHEET_ID:-}" | |
| # βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ | |
| # Logging | |
| # βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ | |
| LOG_LEVEL: "INFO" | |
| volumes: | |
| # Mount local data directory for persistence | |
| - ./data:/app/data | |
| # Optionally mount credentials (if available) | |
| - ./credentials:/app/credentials:ro | |
| # Health check for container orchestration | |
| healthcheck: | |
| test: ["CMD", "curl", "-f", "http://localhost:7860/health"] | |
| interval: 30s | |
| timeout: 10s | |
| retries: 3 | |
| start_period: 10s | |
| # Resource limits (adjust based on your system) | |
| deploy: | |
| resources: | |
| limits: | |
| cpus: "2" | |
| memory: 2G | |
| reservations: | |
| cpus: "1" | |
| memory: 1G | |
| restart: unless-stopped | |
| # βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ | |
| # USAGE: | |
| # βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ | |
| # | |
| # Build image: | |
| # docker-compose build | |
| # | |
| # Start service: | |
| # docker-compose up -d | |
| # | |
| # View logs: | |
| # docker-compose logs -f vyaparflow | |
| # | |
| # Test API: | |
| # curl http://localhost:7860/health | |
| # curl -X POST http://localhost:7860/process \ | |
| # -H "Content-Type: application/json" \ | |
| # -d '{"message": "rahul ne 15000 bheja"}' | |
| # | |
| # Stop service: | |
| # docker-compose down | |
| # | |
| # Remove image: | |
| # docker-compose down -v | |
| # | |
| # βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ | |