Spaces:
Running
Running
| # ============================================================================== | |
| # Animetix - Infrastructure Docker Compose (SOTA 2026) | |
| # ============================================================================== | |
| services: | |
| # 🌐 Backend Django (API Headless) | |
| web: | |
| build: | |
| context: .. | |
| dockerfile: deploy/Dockerfile | |
| container_name: animetix-backend | |
| command: python backend/api/manage.py runserver 0.0.0.0:8000 | |
| volumes: | |
| - ..:/app | |
| ports: | |
| - "8000:8000" | |
| env_file: | |
| - ../.env | |
| depends_on: | |
| - db | |
| - redis | |
| - neo4j | |
| # 🐘 Base de données Relationnelle (PostgreSQL avec pgvector) | |
| db: | |
| image: pgvector/pgvector:pg16 | |
| container_name: animetix-db | |
| environment: | |
| - POSTGRES_DB=${POSTGRES_DB} | |
| - POSTGRES_USER=${POSTGRES_USER} | |
| - POSTGRES_PASSWORD=${POSTGRES_PASSWORD} | |
| volumes: | |
| - postgres_data:/var/lib/postgresql/data | |
| # ⚡ Cache & WebSockets (Redis) | |
| redis: | |
| image: redis:7-alpine | |
| container_name: animetix-redis | |
| volumes: | |
| - redis_data:/data | |
| # 🕸️ Graphe de Connaissances (Neo4j) | |
| neo4j: | |
| image: neo4j:5.20-enterprise | |
| container_name: animetix-neo4j | |
| environment: | |
| - NEO4J_AUTH=${NEO4J_AUTH} | |
| - NEO4J_PLUGINS=["apoc", "gds"] | |
| - NEO4J_ACCEPT_LICENSE_AGREEMENT=yes | |
| volumes: | |
| - neo4j_data:/data | |
| # Ram Server / Inférence Local (Ollama) | |
| # NOTE: En production (GCP/AWS), déployer ce service sur des instances GPU "Spot" | |
| # pour réduire les coûts de ~70%. Les modèles privilégiés sont Qwen-2.5-1.5B et Llama-3-8B. | |
| ollama: | |
| profiles: ["llm"] | |
| image: ollama/ollama:latest | |
| container_name: animetix-ollama | |
| restart: on-failure # Important pour les instances Spot qui peuvent être préemptées | |
| volumes: | |
| - ollama_storage:/root/.ollama | |
| deploy: | |
| resources: | |
| reservations: | |
| devices: | |
| - driver: nvidia | |
| count: 1 | |
| capabilities: [gpu] | |
| volumes: | |
| data_volume: | |
| postgres_data: | |
| redis_data: | |
| neo4j_data: | |
| ollama_storage: | |