flag92 flag92
Deploy

Alibaba Cloud — full stack for China compliance

Required for China compliance — run Chatwoot + Dify on Aliyun with ICP filing, RDS, SLB and monitoring.

Alibaba Cloud ECS / ACK 240 min

When to choose this#

  • Users primarily in mainland China — latency matters
  • ICP filing required
  • Already in the Aliyun ecosystem
  • Data must stay on-shore

Architecture#

WAF · Cloud Firewall

SLB · Public LB

ECS-1
Chatwoot

ECS-2
Dify

ECS-3
Worker / Sidekiq

RDS PostgreSQL · HA

ApsaraDB Redis

OSS
attachments / avatars / backups

Sizing (mid prod)#

ResourceSpecMonthly (annual)
ECS × 3ecs.c7.xlarge (4C8G)¥350 × 3
RDS PG2C4G HA¥600
RedisHA 1G¥120
SLBon-demand~¥120
OSS100GB + traffic~¥50
Total~¥1990/mo

Step 1 — ICP filing#

If you use a China ECS + public domain, ICP filing is mandatory:

  1. Aliyun Console → Beian → New filing
  2. Upload business license / ID, domain info, formal site name like “Customer Support System”
  3. Approval takes 15-30 days

Step 2 — networking#

aliyun vpc CreateVpc --VpcName ai-support --CidrBlock 10.0.0.0/16
aliyun ecs CreateSecurityGroup --SecurityGroupName ai-sg
# Restrict RDS to internal VPC ingress only

Step 3 — deploy#

# On each ECS
curl -fsSL https://get.docker.com | sh
git clone https://github.com/chatwoot/chatwoot
# Edit .env, DATABASE_URL → RDS internal endpoint
docker compose -f docker-compose.production.yaml up -d

Step 4 — HTTPS#

  • Free DV cert via Aliyun Certificate Service
  • Configure on SLB: Listener → HTTPS → select cert
  • Force 80 → 443 redirect

Step 5 — monitoring#

  • CloudMonitor collects ECS / RDS / Redis metrics automatically
  • Alerts: CPU > 80%, memory > 85%, RDS connections > 70%
  • Notify via DingTalk or SMS

Gotchas#

  • ICP number must appear in site footer (linked to beian.miit.gov.cn)
  • Email deliverability — Postmark / SES often spam-filter into China; prefer Aliyun DirectMail or Tencent Mail
  • OSS CORS — Chatwoot attachment uploads to OSS need correct CORS config
  • RDS charset must be utf8mb4 or Chinese emojis break

Search

Press ⌘ K to open