services: fyp-postgres: image: postgres:15-alpine container_name: ${POSTGRES_CONTAINER_NAME:-fyp-postgres} env_file: - ../../.env environment: POSTGRES_HOST_AUTH_METHOD: trust volumes: - postgres_data:/var/lib/postgresql/data healthcheck: test: ["CMD-SHELL", "pg_isready -U ${POSTGRES_USER:-fyp}"] interval: 5s timeout: 3s retries: 5 fyp-redis: image: redis:7-alpine container_name: ${REDIS_CONTAINER_NAME:-fyp-redis} ports: - "0.0.0.0:6379:6379" volumes: - redis_data:/data healthcheck: test: ["CMD", "redis-cli", "ping"] interval: 5s timeout: 3s retries: 5 web: build: context: ../.. dockerfile: compose/dev/node/Dockerfile environment: NODE_ENV: development CHOKIDAR_USEPOLLING: "true" stdin_open: true ports: - "0.0.0.0:5173:5173" volumes: - ../../src:/app/src:delegated - ../../index.html:/app/index.html:delegated - ../../vite.config.ts:/app/vite.config.ts:delegated - ../../tsconfig.json:/app/tsconfig.json:delegated - ../../build:/app/build:delegated - /app/node_modules api: build: context: ../.. dockerfile: compose/dev/python/Dockerfile container_name: dynavera-api ports: - "0.0.0.0:8000:8000" volumes: - ../../:/app environment: DJANGO_SECRET_KEY: ${DJANGO_SECRET_KEY:-dev-secret-key-change-in-production} DJANGO_DEBUG: "true" DJANGO_ALLOWED_HOSTS: "*" DJANGO_CELERY_BROKER_URL: redis://${REDIS_CONTAINER_NAME:-fyp-redis}:6379/0 DJANGO_CORS_ALLOWED_ORIGINS: http://localhost:5173,http://127.0.0.1:5173 DJANGO_SETTINGS_MODULE: config.settings env_file: - ../../.env depends_on: fyp-redis: condition: service_healthy fyp-postgres: condition: service_healthy web: condition: service_started mcp-agent-server: condition: service_started celery: build: context: ../.. dockerfile: compose/dev/celery/Dockerfile container_name: dynavera-celery volumes: - ../../:/app - ${USERPROFILE}/.cache/gpt4all:/root/.cache/gpt4all:rw environment: DJANGO_SECRET_KEY: ${DJANGO_SECRET_KEY:-dev-secret-key-change-in-production} DJANGO_CELERY_BROKER_URL: redis://${REDIS_CONTAINER_NAME:-fyp-redis}:6379/0 DJANGO_SETTINGS_MODULE: config.settings env_file: - ../../.env depends_on: fyp-redis: condition: service_healthy fyp-postgres: condition: service_healthy mcp-agent-server: condition: service_started mcp-agent-server: build: context: ../.. dockerfile: compose/dev/mcp/Dockerfile container_name: dynavera-mcp-agent ports: - "0.0.0.0:8001:8001" volumes: - ../../:/app - ${USERPROFILE}/.cache/gpt4all:/root/.cache/gpt4all:rw - ../../build/rag_db:/app/build/rag_db:ro environment: DJANGO_SECRET_KEY: ${DJANGO_SECRET_KEY:-dev-secret-key-change-in-production} DJANGO_SETTINGS_MODULE: config.settings PYTHONUNBUFFERED: "1" HOME: /root env_file: - ../../.env depends_on: fyp-redis: condition: service_healthy fyp-postgres: condition: service_healthy volumes: redis_data: venv: postgres_data: