Files
wecom-ai-assistant/docs/deploy-quickstart.md
2026-02-05 16:36:32 +08:00

131 lines
4.0 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 云端最小回调壳快速部署指南
## 一、前置条件检查清单
- [ ] 备案域名(例如:`api.yourdomain.com`
- [ ] Linux 服务器Ubuntu 20.04+ / CentOS 7+
- [ ] 公网 IP开放 80/443 端口
- [ ] Docker 和 docker-compose 已安装
- [ ] 企业微信管理后台访问权限
## 二、5 分钟快速部署
### 步骤 1克隆项目
```bash
git clone https://github.com/your-org/wecom-ai-assistant.git
cd wecom-ai-assistant
```
### 步骤 2配置环境变量
```bash
# 复制模板
cp .env.example .env
# 编辑 .env填写以下必需变量
# - WECOM_TOKEN从企微后台获取
# - WECOM_ENCODING_AES_KEY从企微后台获取43位
# - WECOM_CORP_ID从企微后台获取
# - WECOM_AGENT_ID从企微后台获取
```
### 步骤 3部署最小回调壳
```bash
# 方式 A使用 docker-compose
docker-compose -f docker-compose.minimal.yml up -d
# 方式 B使用部署脚本
chmod +x deploy/scripts/deploy-minimal.sh
export DOMAIN=your-domain.com
bash deploy/scripts/deploy-minimal.sh
```
### 步骤 4配置 HTTPSLet's Encrypt
```bash
export DOMAIN=your-domain.com
export SSL_EMAIL=your-email@example.com
chmod +x deploy/scripts/setup-ssl.sh
bash deploy/scripts/setup-ssl.sh
```
### 步骤 5配置企业微信回调
1. 登录企业微信管理后台https://work.weixin.qq.com
2. 进入:应用管理 → 自建应用 → 选择你的应用
3. 配置回调:
- **接收消息服务器 URL**`https://your-domain.com/api/wecom/callback`
- **Token**:与 `.env` 中的 `WECOM_TOKEN` **完全一致**
- **EncodingAESKey**:与 `.env` 中的 `WECOM_ENCODING_AES_KEY` **完全一致**
- **消息加解密方式****安全模式**
4. 点击 **保存**
### 步骤 6验证
```bash
# 查看日志
docker-compose logs -f backend
# 应该看到:
# INFO: wecom verify success {"trace_id": "...", "echostr_length": 43}
```
## 三、关键环境变量
| 变量 | 说明 | 来源 |
|------|------|------|
| `WECOM_TOKEN` | 企业微信回调 Token | 企微后台 → 应用 → 接收消息 → Token |
| `WECOM_ENCODING_AES_KEY` | 43 位 Base64 编码密钥 | 企微后台 → 应用 → 接收消息 → EncodingAESKey |
| `WECOM_CORP_ID` | 企业 ID | 企微后台 → 我的企业 → 企业信息 |
| `WECOM_AGENT_ID` | 应用 AgentId | 企微后台 → 应用管理 → 自建应用 → 应用详情 |
## 四、验证清单
- [ ] 服务启动:`docker-compose ps` 显示 backend 和 nginx 运行中
- [ ] 健康检查:`curl http://localhost:8000/health` 返回 200
- [ ] HTTPS 访问:`curl https://your-domain.com/api/health` 返回 200
- [ ] 企业微信 GET 校验:保存回调配置后,日志显示 `wecom verify success`
- [ ] 企业微信 POST 回调:发送测试消息后,日志显示 `wecom message received``wecom reply sent`
## 五、常见问题
### 5.1 GET 校验失败
**症状**:企微后台保存失败,日志显示 `wecom verify failed`
**解决**
1. 检查 `.env` 中的 `WECOM_TOKEN``WECOM_ENCODING_AES_KEY`
2. 确保与企微后台配置**完全一致**(包括大小写、空格)
3. 重启后端:`docker-compose restart backend`
### 5.2 HTTPS 证书问题
**症状**:浏览器显示"不安全连接"
**解决**
1. 检查证书:`sudo certbot certificates`
2. 更新 Nginx 配置,使用正确的证书路径
3. 重启 Nginx`docker-compose restart nginx`
### 5.3 域名无法访问
**症状**`curl https://your-domain.com/api/health` 超时
**解决**
1. 检查 DNS`nslookup your-domain.com`
2. 检查防火墙:`sudo ufw status`Ubuntu`sudo firewall-cmd --list-all`CentOS
3. 检查端口:`netstat -tlnp | grep -E '80|443'`
## 六、下一步
完成最小回调壳部署后:
1.**最小回调壳**(当前阶段)
2. ⏭️ **数据库接入**(会话与消息入库)
3. ⏭️ **Admin 后台**(会话列表、工单、知识库)
4. ⏭️ **FAQ/RAG**(智能回复)
**详细文档**:参见 `docs/deploy-cloud-minimal.md`