@aaswe/codebase-ai
Version:
AI-Assisted Software Engineering (AASWE) - Rich codebase context for IDE LLMs
99 lines (93 loc) • 2.62 kB
YAML
services:
# AASWE MCP Server - Main application
aaswe-server:
# The build section below will be used only when --build flag is specified
image: assah/codebase-ai:latest
build:
context: .
dockerfile: Dockerfile
ports:
- "3001:3001"
environment:
- NODE_ENV=production
- LOG_LEVEL=info
- NEO4J_URI=bolt://neo4j:7687
- NEO4J_USERNAME=neo4j
- NEO4J_PASSWORD=aaswe-password
- OPENAI_API_KEY=${OPENAI_API_KEY:-}
- ANTHROPIC_API_KEY=${ANTHROPIC_API_KEY:-}
volumes:
- ./data:/app/data
- ${ANALYSIS_PROJECT_PATH:-./}:/app/analysis-project
- ${ANALYSIS_PROJECT_PATH:-./}/knowledge:/app/knowledge
depends_on:
neo4j:
condition: service_healthy
redis:
condition: service_healthy
restart: unless-stopped
networks:
- aaswe-network
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:3001/health"]
interval: 30s
timeout: 10s
retries: 3
# Neo4j Database - Graph database for relationships
neo4j:
image: neo4j:5.15-community
ports:
- "7474:7474" # HTTP
- "7687:7687" # Bolt
environment:
- NEO4J_AUTH=neo4j/aaswe-password
- NEO4J_PLUGINS=["apoc"]
- NEO4J_dbms_security_procedures_unrestricted=apoc.*
- NEO4J_server_memory_heap_initial__size=512m
- NEO4J_server_memory_heap_max__size=${NEO4J_HEAP_SIZE:-2g}
- NEO4J_server_memory_pagecache_size=${NEO4J_PAGECACHE_SIZE:-1g}
volumes:
- neo4j-data:/data
- neo4j-logs:/logs
- neo4j-import:/var/lib/neo4j/import
- neo4j-plugins:/plugins
restart: unless-stopped
networks:
- aaswe-network
healthcheck:
test: ["CMD", "cypher-shell", "-u", "neo4j", "-p", "aaswe-password", "RETURN 1"]
interval: 30s
timeout: 10s
retries: 5
# Redis - Caching layer (optional)
redis:
image: redis:7-alpine
ports:
- "6379:6379"
command: redis-server --appendonly yes --maxmemory 256mb --maxmemory-policy allkeys-lru
volumes:
- redis-data:/data
restart: unless-stopped
networks:
- aaswe-network
healthcheck:
test: ["CMD", "redis-cli", "ping"]
interval: 30s
timeout: 10s
retries: 3
# Note: Web interface not implemented yet
# Neo4j Browser available at http://localhost:7474 for graph visualization
volumes:
neo4j-data:
driver: local
neo4j-logs:
driver: local
neo4j-import:
driver: local
neo4j-plugins:
driver: local
redis-data:
driver: local
networks:
aaswe-network:
driver: bridge