Prerequisites
- Docker Engine 20.10 or later
- Docker Compose v2.0 or later
- 4GB available RAM (recommended)
- 10GB available disk space
Quick Start
Start the services
- Build the orchestrator and frontend images
- Start both services with health checks
- Create a persistent volume for data storage
- Set up a bridge network for service communication
Verify the deployment
Once started, the following services will be available:
Check the orchestrator health:
| Service | URL | Description |
|---|---|---|
| Orchestrator API | http://localhost:8080 | REST API and health endpoints |
| Web Frontend | http://localhost:3000 | React-based management UI |
| MCP SSE endpoint | http://localhost:8080/mcp/sse | Model Context Protocol server |
Configuration
Thedocker-compose.yaml file defines the following services:
Orchestrator Service
Frontend Service
Customizing Environment Variables
You can override the default configuration by creating a.env file or modifying the docker-compose.yaml directly:
Data Persistence
The orchestrator uses a named Docker volumeorchestrator-data to persist:
- SQLite database (
mimir.db) - Uploaded files and project data
- Plugin artifacts
Managing the Deployment
Stop services
Stop and remove all data
View logs
Restart a service
Rebuild after code changes
Limitations
Docker Compose deployments have the following limitations:- No worker execution: Pipeline execution, ML training, and digital twin synchronization require Kubernetes workers
- Single orchestrator: No high availability or horizontal scaling
- Local storage only: SQLite is not suitable for distributed deployments
Networking
The deployment creates a bridge networkmimir-network for service communication:
- Frontend → Orchestrator:
http://orchestrator:8080 - External → Orchestrator:
http://localhost:8080 - External → Frontend:
http://localhost:3000
Troubleshooting
Orchestrator fails to start
Check the logs for errors:- Port conflict: Another service is using port 8080 or 3000
- Permission errors: Docker doesn’t have permission to create the volume
- Out of memory: Increase Docker’s memory limit
Health check failing
The orchestrator may take 15-20 seconds to initialize. If it continues to fail:Cannot connect to frontend
Ensure the orchestrator is healthy before the frontend starts:orchestrator: condition: service_healthy.
Next Steps
- Configure MCP integration to expose tools to AI agents
- Review the Configuration Reference for advanced settings
- Upgrade to Kubernetes deployment for production use