services: dartsgpt: build: context: . dockerfile: Dockerfile container_name: dartsgpt env_file: - .env.docker ports: - "8502:8502" # Streamlit UI volumes: # Persist embeddings - ./embeddings:/app/embeddings # Persist generated models - ./output:/app/output # Persist logs - ./logs:/app/logs # Mount knowledge base (optional, for development) # - ./knowledge:/app/knowledge:ro restart: unless-stopped # Resource limits deploy: resources: limits: cpus: '2' memory: 4G reservations: cpus: '1' memory: 2G # Optional: CLI service for running commands dartsgpt-cli: build: context: . dockerfile: Dockerfile container_name: dartsgpt-cli env_file: - .env.docker volumes: - ./embeddings:/app/embeddings - ./output:/app/output - ./logs:/app/logs # Override command for CLI command: ["uv", "run", "python", "main.py", "--help"] # Don't restart automatically (for one-off commands) restart: "no" profiles: - cli # Only start when explicitly requested # Optional: Add a volume for persistent storage volumes: embeddings: output: logs: