Initialize Docker Swarm (manager node)
Deploy the complete infrastructure
Run the deployment script from the repository root:docker-compose.yml in the correct order.
Rolling updates
Production NGINX reverse proxy
NGINX handles TLS termination, routing, WebSocket upgrades, and proxy buffering. Update domain mappings in:chatapi.confextensions.confmgmtapi.confnotifications.confdashboard.confglobalwebhooks.confmoderation.confwebsocket.conf
Domain configuration
When replacing<your-domain>, update environment values for:
- Chat API, Management API, Extensions, Notifications, Moderation, Webhooks, and SQL Consumer
- NGINX reverse proxy hostnames
- WebSocket host configuration in Chat API
- Example: use
chat.example.comorapi.example.comin place of<your-domain>throughout.
Useful Swarm operations
General management:Health check endpoints
| Component | URL |
|---|---|
| Dashboard | https://app.<your-domain> |
| Chat API | https://api-us.<your-domain>/health-check |
| Client API | https://apiclient-us.<your-domain>/health-check |
| Management API | https://apimgmt.<your-domain>/health-check |
| Notifications | https://notifications-us.<your-domain>/health-check |
| Moderation | https://rule-us.<your-domain>/health |
| WebSocket | https://websocket-us.<your-domain>/v1/health |
| Webhooks | https://webhooks-us.<your-domain>/v1/webhooks/health-check |
<your-domain> with your actual domain (for example, example.com or chat.example.com).