Deployment
Local Development
This starts all Virtufin services with Dapr sidecars, Redis (state store + pub/sub), placement service, and Zipkin tracing.
Host Ports (Docker Compose)
| Service | HTTP (host) | gRPC (host) | Internal HTTP | Internal gRPC |
|---|---|---|---|---|
| API Gateway | 5001 |
5002 |
5001 |
5002 |
| WebSocketManager | 15001 |
15002 |
5001 |
5002 |
| WorkManager | 25001 |
25002 |
5001 |
5002 |
Set environment variables to point your examples at the correct Docker ports:
export VIRTUFIN_WSM_URL=localhost:15002
export VIRTUFIN_WM_URL=localhost:25002
export VIRTUFIN_API_URL=http://localhost:5001
Kubernetes
Requires Dapr installed on the cluster. Applies namespace, Dapr components ConfigMap, deployments, and services for all three Virtufin services.
Within the cluster, services are accessible at:
export VIRTUFIN_WSM_URL=websocket-manager.virtufin.svc.cluster.local:5002
export VIRTUFIN_WM_URL=work-manager.virtufin.svc.cluster.local:5002
export VIRTUFIN_API_URL=http://api-gateway.virtufin.svc.cluster.local:5001
Docker Compose
The docker-compose.yml includes:
- Redis (state store + pub/sub)
- Dapr placement service
- Zipkin (distributed tracing)
- API Gateway + Dapr sidecar
- WebSocketManager + Dapr sidecar
- WorkManager + Dapr sidecar
All services use pre-built Docker images pulled from docker.haenerconsulting.com/virtufin/. Dapr components (pubsub, statestore, config) are mounted from ./components/.