services: postgres: image: pgvector/pgvector:pg16 container_name: openbrain_postgres environment: POSTGRES_DB: openbrain POSTGRES_USER: openbrain POSTGRES_PASSWORD: openbrain ports: - "5433:5432" volumes: - openbrain_data:/var/lib/postgresql/data - ./init.sql:/docker-entrypoint-initdb.d/init.sql healthcheck: test: ["CMD-SHELL", "pg_isready -U openbrain"] interval: 5s timeout: 5s retries: 5 mcp: build: . container_name: openbrain_mcp environment: MCP_TRANSPORT: http MCP_PORT: "3001" DATABASE_URL: postgresql://openbrain:openbrain@postgres:5432/openbrain DIAL_API_KEY: ${DIAL_API_KEY} DIAL_BASE_URL: ${DIAL_BASE_URL:-https://ai-proxy.lab.epam.com} DIAL_API_VERSION: ${DIAL_API_VERSION:-2024-06-01} DIAL_EMBEDDING_MODEL: ${DIAL_EMBEDDING_MODEL:-text-embedding-3-small-1} DIAL_CHAT_MODEL: ${DIAL_CHAT_MODEL:-gpt-4o-mini-2024-07-18} ports: - "3001:3001" depends_on: postgres: condition: service_healthy healthcheck: test: ["CMD-SHELL", "wget -qO- http://localhost:3001/health || exit 1"] interval: 10s timeout: 5s retries: 3 volumes: openbrain_data: