Deployment

This guide covers deploying Tarasol to production environments.

Production Topology

Production Deployment Topology

Loading diagram...

Health Check Endpoints

Every service exposes health endpoints:

EndpointPurpose
GET /healthOverall service health
GET /health/dbDatabase connectivity
GET /health/redisRedis connectivity
GET /health/rabbitmqRabbitMQ connectivity

Scaling Considerations

ServiceScaling StrategyNotes
GatewayHorizontalStateless — scale behind load balancer
IdentityHorizontalSession stored in Redis
CMSHorizontalStateless
Notification WorkersHorizontalAdd workers for throughput
MediaVertical + HorizontalMemory-intensive (image processing)
SearchVerticalElasticsearch handles distribution

Environment Configuration

⚠Warning

Never commit production environment files to version control. Use environment variable injection from your deployment platform (Kubernetes secrets, AWS Parameter Store, etc.).

Required for All Services

NameTypeDefaultDescription
NODE_ENVstringproductionMust be 'production'
DB_HOSTstring-Production SQL Server host
DB_USERNAMEstring-Production database user
DB_PASSWORDstring-Production database password
REDIS_HOSTstring-Production Redis host
RABBITMQ_URISstring-Production RabbitMQ URIs
JWT_SECRETstring-Production JWT signing secret
ELASTIC_APM_SERVER_URLstring-APM server URL