# 🚀 快速部署到SAE - 5分钟上手 > **适合人群:** 零部署经验的产品经理 > **预计时间:** 2-3小时(包含等待) > **难度等级:** ⭐⭐ 简单 --- ## 📚 完整文档清单 我已经为您准备了3份详细文档,请按顺序阅读: ### 1️⃣ 详细部署指南(必读) **文件:** `docs/05-部署文档/02-SAE部署完全指南(产品经理版).md` **内容:** - ✅ 需不需要购买Redis的答案 - ✅ 傻瓜式部署步骤(7个大步骤) - ✅ 每一步都有截图和说明 - ✅ 常见问题解决方案 - ✅ 成本估算和优化建议 **阅读时间:** 20-30分钟 --- ### 2️⃣ 环境变量配置指南(必读) **文件:** `docs/07-运维文档/03-SAE环境变量配置指南.md` **内容:** - ✅ 所有环境变量的详细说明 - ✅ 如何正确填写每一个配置项 - ✅ 配置检查清单 - ✅ 常见错误和解决方法 **阅读时间:** 10-15分钟 --- ### 3️⃣ 部署检查清单(打印/对照) **文件:** `部署检查清单.md` **内容:** - ✅ 7个阶段的检查项 - ✅ 每个步骤都有复选框 - ✅ 快速验证命令 - ✅ 重要信息记录模板 **使用方法:** 打印出来或在另一个屏幕打开,边部署边勾选 --- ## 🎯 三步快速开始 ### Step 1: 准备工具(5分钟) 1. **安装Docker Desktop** - 下载:https://www.docker.com/products/docker-desktop/ - 安装后重启电脑 - 确认Docker运行:在PowerShell输入 `docker ps` 2. **确认阿里云服务已购买** - ✅ SAE (Serverless应用引擎) - ✅ RDS PostgreSQL - ✅ OSS (对象存储) --- ### Step 2: 构建和推送镜像(15分钟) **打开PowerShell,执行:** ```powershell # 1. 进入项目目录 cd D:\MyCursor\AIclinicalresearch # 2. 使用自动化脚本部署 .\deploy-to-sae.ps1 -Version "v1.0.0" # 脚本会自动完成: # - 构建Docker镜像 # - 推送到阿里云容器镜像服务 ``` **如果提示需要登录阿里云:** ```powershell docker login --username=你的阿里云账号 registry.cn-hangzhou.aliyuncs.com # 输入密码(在阿里云容器镜像服务设置的密码) ``` --- ### Step 3: 在SAE控制台完成部署(30分钟) 1. **登录阿里云控制台** - https://www.aliyun.com - 搜索"Serverless应用引擎" 2. **创建应用** - 应用名称:`aiclinical-backend-dev` - 镜像:选择刚才推送的镜像 - 实例规格:1核2GB 3. **配置环境变量** - 参考:`docs/07-运维文档/03-SAE环境变量配置指南.md` - 逐行复制配置(注意替换真实值) 4. **验证部署** - 访问:`http://你的SAE地址:3001/health` - 看到 `{"status":"ok"}` 就成功了! --- ## ❓ 核心问题快速解答 ### Q1: 需要购买Redis吗? **答案:初期不需要!** - ✅ 开发测试环境:使用内存缓存(`CACHE_TYPE=memory`) - ✅ 用户<100人:内存缓存足够 - ⚠️ 用户100-1000人:建议购买Redis(¥200/月) - ✅ 用户>1000人:必须使用Redis **配置方法:** ```bash # 初期配置 CACHE_TYPE=memory # 未来需要时改为 CACHE_TYPE=redis REDIS_HOST=r-xxxx.redis.rds.aliyuncs.com REDIS_PASSWORD=你的密码 ``` --- ### Q2: Python微服务怎么部署? **三个方案:** **方案A:暂不部署(推荐初期)** - 先部署Node.js后端 - Python服务继续在本地运行 - 环境变量:`EXTRACTION_SERVICE_URL=http://你的本地公网IP:8000` - 或使用ngrok等内网穿透工具 **方案B:也部署到SAE(推荐正式上线)** - 创建 `extraction_service/Dockerfile` - 推送镜像到ACR - 在SAE创建新应用 `aiclinical-python-dev` - 配置SAE内网通信 **方案C:使用阿里云FC(函数计算)** - 成本最低 - 按调用次数付费 - 需要改造代码 --- ### Q3: 前端怎么部署? **两个方案:** **方案A:OSS静态托管(推荐初期)** ```powershell # 1. 构建前端 cd frontend-v2 npm run build # 2. 上传到OSS # 在OSS控制台手动上传dist目录所有文件 # 3. 配置静态网站托管 # OSS控制台 → 基础设置 → 静态页面 ``` **方案B:SAE部署(推荐正式)** - 使用Nginx容器 - 创建Dockerfile for frontend - 部署到SAE独立应用 --- ### Q4: 部署失败怎么办? **3个排查步骤:** 1. **查看日志** ``` SAE控制台 → 应用详情 → 实时日志 找红色ERROR关键词 ``` 2. **检查环境变量** ``` SAE控制台 → 配置管理 → 环境变量 确认DATABASE_URL、OSS密钥等配置正确 ``` 3. **查看详细文档** ``` docs/05-部署文档/02-SAE部署完全指南(产品经理版).md → 第8章:常见问题解决 ``` --- ## 📊 部署成功标志 ### ✅ 后端部署成功 访问:`http://你的SAE地址:3001/health` **预期返回:** ```json { "status": "ok", "database": "connected", "storage": "oss", "cache": "memory", "timestamp": "2025-12-11T10:30:00.000Z" } ``` ### ✅ 数据库连接成功 **日志中显示:** ``` ✅ [Config] Environment validation passed ✅ [Database] 数据库连接成功 📦 [Storage] 使用阿里云 OSS 存储 ``` ### ✅ OSS存储正常 **测试方法:** 1. 访问后端API上传文件 2. 在OSS控制台能看到文件 3. 文件可以正常下载 --- ## 💰 成本估算 ### 开发测试环境(当前配置) | 服务 | 规格 | 月费 | 说明 | |------|------|------|------| | SAE | 1C2G × 1实例 | ¥150 | 按量付费 | | RDS | 2C4G 通用版 | ¥300 | 可包年优惠 | | OSS | 100GB存储 | ¥10 | 按实际使用 | | Redis | - | **¥0** | **不购买** | | **合计** | | **¥460/月** | | ### 正式生产环境(用户>1000) | 服务 | 规格 | 月费 | |------|------|------| | SAE | 2C4G × 3实例 | ¥600 | | RDS | 4C8G 通用版 | ¥600 | | OSS | 500GB + 50GB流量 | ¥70 | | Redis | 2GB标准版 | ¥200 | | **合计** | | **¥1470/月** | --- ## 🎉 恭喜! 如果您已经完成部署,恭喜您! ### 记得保存重要信息: ``` 【部署信息】 后端地址:http://_______________:3001 前端地址:http://_______________ RDS地址:_______________ RDS密码:_______________ OSS Bucket:aiclinical-dev OSS AccessKeyId:_______________ OSS AccessKeySecret:_______________ 部署时间:_______________ ``` --- ## 📞 需要帮助? 1. **查看详细文档** - `docs/05-部署文档/02-SAE部署完全指南(产品经理版).md` 2. **查看环境变量配置** - `docs/07-运维文档/03-SAE环境变量配置指南.md` 3. **使用检查清单** - `部署检查清单.md` 4. **查看云原生架构设计** - `docs/09-架构实施/03-云原生部署架构指南.md` --- **版本:** v1.0 **创建日期:** 2025-12-11 **维护者:** 技术架构师 **下次更新:** 根据实际部署反馈优化