version: "3.9" services: backend: build: context: . dockerfile: docker/backend.Dockerfile container_name: robocopilot-backend env_file: .env environment: - ROBOCOPILOT_HOST=0.0.0.0 - ROBOCOPILOT_PORT=8000 volumes: - ./backend:/app/backend:cached - ./agents:/app/agents:cached - ./prompts:/app/prompts:cached - ./ros_templates:/app/ros_templates:cached - ./isaac_templates:/app/isaac_templates:cached - workspace:/workspace ports: - "8000:8000" healthcheck: test: ["CMD", "curl", "-f", "http://localhost:8000/api/v1/health"] interval: 15s timeout: 3s retries: 5 restart: unless-stopped frontend: build: context: . dockerfile: docker/frontend.Dockerfile container_name: robocopilot-frontend env_file: .env environment: - NEXT_PUBLIC_API_BASE=http://localhost:8000 depends_on: backend: condition: service_healthy ports: - "3000:3000" restart: unless-stopped volumes: workspace: driver: local