版本:v1.6.0 | 日期:2026-08-09 | 用途:① 团队本地部署 demo;② 讲解现场 step-by-step 演示脚本 代码仓库即 demo 完整代码(docker-compose.demo.yml 已在 git),clone 后一条命令部署
| 依赖 | 版本 | 说明 |
|---|---|---|
| Docker Desktop | ≥ 4.x | macOS / Windows / Linux 均可 |
| 空闲端口 | 3000 / 8081 / 5433 / 6380 | 官网 / API / 演示库 / 演示 Redis |
| 资源 | ≥ 4GB 内存 | 演示含 5 个容器 |
# 1. 克隆仓库
git clone <仓库地址> dotouch-ai && cd dotouch-ai
# 2. 启动演示环境(自动构建 5 容器:PG/Redis/mock上游/API/官网)
docker compose -f docker-compose.demo.yml up -d --build
# 3. 验证(等 15–30 秒初始化)
curl http://localhost:8081/v1/health # 预期:{"status":"ok","version":"1.6.0",...}
open http://localhost:3000 # 官网(默认越南语)
docker compose -f docker-compose.demo.yml downdocker compose -f docker-compose.demo.yml down -v| 账号 | 密码 | 用途 |
|---|---|---|
demo.user@dotouch.ai |
User2026! |
官网 / 用户控制台(余额 $150) |
admin@dotouch.ai |
Admin2026! |
管理后台 |
test-e2e@dotouch.ai |
Test1234 |
接口联调(admin 角色) |
social.demo@dotouch.ai |
—(mock 社交登录) | 社交登录演示 |
http://localhost:3000 → 展示 Hero / 模型卡 / 定价预览 / 邀请奖励区块Tiếng Việt / English / Bahasa Indonesia / ไทย / العربية
demo.user@dotouch.ai / User2026! 登录 → 自动跳转控制台演示注册流程(可选):退出 → 注册 → 邮箱验证码(演示环境验证码打印在 API 日志):
docker logs demo-dotouch-api | grep -iE "code|mã|验证码" | tail -3
社交登录(可选):登录弹窗 → Google/Facebook 按钮 → mock 一键登录
dt_ 前缀,仅显示一次)→ 撤销/轮换演示q_banner_80 文案)# 用控制台创建的 Key 调用(mock 上游即时响应)
curl -s http://localhost:8081/v1/chat/completions \
-H "Authorization: Bearer <你的Key>" \
-H "Content-Type: application/json" \
-d '{"model":"deepseek-v4","messages":[{"role":"user","content":"你好"}]}'
"stream": true → 观察 SSE data: 块 + [DONE]http://localhost:3000/admin → admin@dotouch.ai / Admin2026! 登录apps/api/src/config/config.service.ts(SystemConfig → 7 币种)→ apps/web/src/components/FxPrice.tsx(本币主价)→ 管理后台汇率卡gateway/(OpenAI 兼容 + SSE)→ wallet/(预扣-结算-退款)→ usage/(明细)middleware.ts(9 locale 路由)→ src/i18n/request.ts → lib/seo.ts(LOCALES)→ [locale]/layout.tsx(RTL)→ LocaleSwitcher.tsx(下拉)docker-compose.demo.yml(PG/Redis/mock 上游 19090)| 症状 | 原因与解法 |
|---|---|
| 官网 500 / API 连不上 | 初始化未完成:docker compose -f docker-compose.demo.yml ps 等 demo-dotouch-api Up 后再试 |
| 验证码找不到 | 演示环境邮件打印在容器日志:docker logs demo-dotouch-api \| grep -i code |
| 端口被占用 | 改 docker-compose.demo.yml 端口映射(3000→3001 等)后 up -d |
| 改了代码想更新 | docker compose -f docker-compose.demo.yml up -d --build(镜像重建) |
| 数据乱了想重置 | down -v 后重新 up -d --build(自动重新 seed) |
| 想调真实 DashScope | 改 .env 的 DASHSCOPE_API_KEY,演示环境默认指向 mock 上游(零成本、可离线) |
demo 与生产的差异:mock 上游 → DashScope 真实 Key;PAYMENT_PROVIDER=mock → momo/zalopay;演示数据 → 空库冷启动;本地端口 → 香港节点 + 域名/SSL。生产部署见 docs/team-tasks-v1.6.0.md T-03。