version: "3.8" services: laap: build: context: . target: base container_name: laap-agent environment: - LAAP_ENV=production - LAAP_PROVIDER=${LAAP_PROVIDER:-openai} - LAAP_API_KEY=${LAAP_API_KEY:-} - LAAP_MODEL=${LAAP_MODEL:-gpt-4o} volumes: - laap-data:/app/data - laap-sessions:/app/sessions - ${PWD}:/workspace working_dir: /workspace stdin_open: true tty: true networks: - laap-net laap-api: build: context: . target: base container_name: laap-api command: ["laap", "serve", "--host", "0.0.0.0", "--port", "8080"] ports: - "8080:8080" environment: - LAAP_ENV=production - LAAP_PROVIDER=${LAAP_PROVIDER:-openai} - LAAP_API_KEY=${LAAP_API_KEY:-} volumes: - laap-data:/app/data networks: - laap-net laap-ui: build: context: ./ui dockerfile: Dockerfile container_name: laap-ui ports: - "3000:3000" depends_on: - laap-api environment: - VITE_API_URL=http://laap-api:8080 networks: - laap-net laap-rag: build: context: . dockerfile: Dockerfile.rag container_name: laap-rag ports: - "8081:8081" environment: - QDRANT_URL=http://qdrant:6333 - EMBEDDING_MODEL=BAAI/bge-small-en-v1.5 depends_on: - qdrant networks: - laap-net qdrant: image: qdrant/qdrant:latest container_name: laap-qdrant ports: - "6333:6333" - "6334:6334" volumes: - qdrant-data:/qdrant/storage networks: - laap-net volumes: laap-data: laap-sessions: qdrant-data: networks: laap-net: driver: bridge