How it helps your business
Key Benefits
- Omnichannel Power: Connect all your support channels into one place.
- Data Sovereignty: Keep all customer conversations on your own servers.
- Cost Efficiency: No more per-agent seat costs or escalating cloud fees.
- Team Collaboration: Shared inboxes and private notes make team resolving faster.
- Extensibility: Use Chatwoot's API to build custom bots or automate ticketing.
Production Architecture Overview
- Chatwoot Rails App: The main logic engine.
- Sidekiq: For processing background jobs and multi-channel notifications.
- PostgreSQL Database: Persistence for conversations, users, and account data.
- Redis: Essential for the realtime state and job queuing.
- S3 / Local Storage: For storing conversation attachments and user avatars.
- Reverse Proxy: Nginx or Traefik with SSL (Let's Encrypt).
How we deploy this for you
Security Hardened
Firewalls, SSL, and hardened kernels out of the box.
Performance Tuned
Optimized for speed with cache and DB fine-tuning.
Automated Backups
Daily off-site backups so you never lose your data.
Private Cloud
You own the server and the data. No middleman.
Implementation Blueprint
Prerequisites
- Hardware: 2 vCPU, 4GB RAM minimum (highly recommended for Sidekiq).
- Environment: Ubuntu 22.04 LTS or Docker-enabled Linux.
Docker Compose Configuration
version: '3'
services:
chatwoot:
image: chatwoot/chatwoot:latest
container_name: chatwoot
restart: always
environment:
- DATABASE_URL=postgres://ap_user:StrongPassword123@postgres:5432/chatwoot
- REDIS_URL=redis://redis:6379/1
- SECRET_KEY_BASE=YOUR_GENERATED_SECRET
- FRONTEND_URL=https://support.yourcompany.com
ports:
- "3000:3000"
depends_on:
- postgres
- redis
postgres:
image: postgres:15
volumes:
- ./postgres-data:/var/lib/postgresql/data
environment:
- POSTGRES_DB=chatwoot
- POSTGRES_USER=ap_user
- POSTGRES_PASSWORD=StrongPassword123
redis:
image: redis:7
volumes:
- ./redis-data:/dataStep-by-Step Deployment
- Setup the Environment: Clone the official Chatwoot deployment scripts.
git clone https://github.com/chatwoot/chatwoot.git chat-prod cd chat-prod/deployment/dockershell - Configuration: Update the
.envfile with yourSECRET_KEY_BASEand database details. - Database Migration: Run the standard Rails migrations before starting.
docker-compose run --rm chatwoot bundle exec rake db:prepareshell - Launch:
docker-compose up -dshell
Scaling Strategy
- Separate Sidekiq Workers: In high-volume environments, run Sidekiq in its own container or across multiple nodes to ensure message processing never lags.
- Centralized Storage: Use an external S3-compatible service for attachments to allow multiple Chatwoot instances to share access.
- Read Replicas: Configure PostgreSQL read-replicas for faster dashboard analytics without impacting real-time message flow.
Includes Security & performance standards
Best place to host Chatwoot
We recommend Hostinger for its reliability and low cost. It's the perfect home for your new apps, featuring easy setup and 24/7 support.
Get Started on Hostinger