services: neo4j: image: neo4j:5-community container_name: mirofish-neo4j environment: NEO4J_AUTH: neo4j/${NEO4J_PASSWORD:-mirofish123} ports: - "7474:7474" - "7687:7687" volumes: - neo4j-data:/data - neo4j-logs:/logs healthcheck: test: ["CMD-SHELL", "cypher-shell -u neo4j -p ${NEO4J_PASSWORD:-mirofish123} 'RETURN 1' || exit 1"] interval: 10s timeout: 5s retries: 10 start_period: 30s restart: unless-stopped mirofish: image: ghcr.io/666ghj/mirofish:latest # 加速镜像(如拉取缓慢可替换上方地址) # image: ghcr.nju.edu.cn/666ghj/mirofish:latest container_name: mirofish env_file: - .env environment: # In-Docker override; host-mode (`npm run dev`) uses the bolt://localhost:7687 default from Config. NEO4J_URI: bolt://neo4j:7687 # Note: an Ollama daemon running on the host is reached from this container # via host.docker.internal:11434. Set EMBEDDING_BASE_URL=http://host.docker.internal:11434/v1 # in your .env to point the Graphiti embedder at a local Ollama instance. depends_on: neo4j: condition: service_healthy ports: - "3000:3000" - "5001:5001" restart: unless-stopped volumes: - ./backend/uploads:/app/backend/uploads volumes: neo4j-data: neo4j-logs: