# 部署脚本使用说明 ## 📅 更新时间 2025年12月13日 --- ## 🎯 脚本对比总览 | 脚本名称 | 用途 | 适用场景 | 推荐度 | |---------|------|----------|--------| | **deploy-website-update.sh** | 销售官网更新 | 更新销售页面组件 | ⭐⭐⭐⭐⭐ **强烈推荐** | | deploy.sh | 完整部署 | 首次部署或大版本更新 | ⭐⭐⭐⭐ | | deploy-final.sh | 登录功能更新 | 更新认证相关功能 | ⭐⭐⭐ | | deploy-auth.sh | 认证系统部署 | 部署NextAuth | ⭐⭐ | | deploy-database.sh | 数据库部署 | 部署PostgreSQL | ⭐⭐ | | deploy-signup.sh | 注册功能部署 | 部署用户注册 | ⭐⭐ | | deploy-with-database.sh | 认证+数据库 | 完整认证系统 | ⭐⭐ | --- ## 🚀 推荐使用脚本 ### 1️⃣ **deploy-website-update.sh** ⭐⭐⭐⭐⭐ **专门为本次销售官网更新创建** #### 适用场景 - ✅ 更新销售页面(Hero、Pricing、Features等) - ✅ 更新系统功能介绍 - ✅ 更新价格策略 - ✅ 添加远程部署服务 #### 更新内容 - `components/Hero.tsx` - 首页组件 - `components/Pricing.tsx` - 价格组件 - `components/Features.tsx` - 功能组件 - `components/SystemFeatures.tsx` - 系统功能组件(新增) - `app/page.tsx` - 首页入口 - `package.json` - 依赖配置 #### 使用方法 ```bash cd /Users/lanmu/Desktop/xiaso bash deploy-website-update.sh ``` #### 部署流程 1. 检查服务器连接 2. 打包更新的组件文件 3. 上传到服务器 4. 解压文件 5. 重新构建Docker镜像 6. 启动服务 7. 验证部署 #### 预计时间 **3-5分钟** #### 优点 - ✅ 只更新必要文件,速度快 - ✅ 包含所有本次更新的组件 - ✅ 自动验证部署结果 - ✅ 清晰的进度提示 --- ### 2️⃣ **deploy.sh** ⭐⭐⭐⭐ **全量同步脚本,适合大版本更新** #### 适用场景 - ✅ 首次部署 - ✅ 大版本更新(多个模块修改) - ✅ 需要同步所有文件 #### 使用方法 ```bash cd /Users/lanmu/Desktop/xiaso bash deploy.sh ``` #### 部署流程 1. 创建远程目录 2. 使用rsync同步所有文件(排除node_modules、.next等) 3. 检查并安装Docker 4. 检查并安装Docker Compose 5. 构建并启动容器 #### 预计时间 **5-10分钟**(首次部署可能更长) #### 优点 - ✅ 完整同步所有文件 - ✅ 自动处理依赖 - ✅ 自动安装Docker #### 缺点 - ❌ 同步文件较多,速度较慢 - ❌ 可能会覆盖一些不需要更新的文件 --- ## ❌ 不推荐用于本次更新的脚本 ### deploy-final.sh **问题**:只打包特定文件,不包含本次更新的SystemFeatures.tsx ```bash # 只打包这些文件 tar -czf final-update.tar.gz \ lib \ app/api/auth \ components/Pricing.tsx \ # 只有Pricing.tsx package.json ``` **缺失**: - ❌ components/Hero.tsx - ❌ components/Features.tsx - ❌ components/SystemFeatures.tsx(新增) - ❌ app/page.tsx --- ### deploy-auth.sh **用途**:只部署NextAuth认证系统 **不适合原因**: - ❌ 只更新认证相关文件 - ❌ 不包含销售页面组件 --- ### deploy-database.sh **用途**:只部署PostgreSQL数据库 **不适合原因**: - ❌ 只部署数据库 - ❌ 不更新任何页面代码 --- ### deploy-signup.sh **用途**:只部署用户注册功能 **不适合原因**: - ❌ 只更新注册相关文件 - ❌ 不包含销售页面更新 --- ### deploy-with-database.sh **用途**:部署认证系统含数据库 **不适合原因**: - ❌ 只更新认证和数据库 - ❌ 不包含销售页面更新 --- ## 📋 部署前检查清单 ### 1. 确认更新的文件 本次更新包含以下文件: - [x] `components/Hero.tsx` - 更新价格和推广期信息 - [x] `components/Pricing.tsx` - 添加三级版本和远程部署服务 - [x] `components/Features.tsx` - 更新优势对比 - [x] `components/SystemFeatures.tsx` - 新增系统功能介绍 - [x] `app/page.tsx` - 添加SystemFeatures组件 - [x] `package.json` - 依赖更新(如有) ### 2. 检查服务器连接 ```bash # 测试SSH连接 ssh root@45.249.208.118 "echo '连接成功'" ``` ### 3. 备份当前版本(可选) ```bash ssh root@45.249.208.118 "cd /opt/flnxi-website && tar -czf backup-$(date +%Y%m%d-%H%M%S).tar.gz ." ``` --- ## 🚀 推荐部署流程 ### 方案1:使用专用更新脚本(推荐)⭐⭐⭐⭐⭐ ```bash cd /Users/lanmu/Desktop/xiaso bash deploy-website-update.sh ``` **优点**: - ✅ 速度最快(3-5分钟) - ✅ 只更新必要文件 - ✅ 专门为本次更新设计 --- ### 方案2:使用全量同步脚本 ```bash cd /Users/lanmu/Desktop/xiaso bash deploy.sh ``` **优点**: - ✅ 同步所有文件,确保完整 - ✅ 适合大版本更新 **缺点**: - ❌ 速度较慢(5-10分钟) - ❌ 同步不必要的文件 --- ## 📊 部署后验证 ### 1. 检查容器状态 ```bash ssh root@45.249.208.118 'cd /opt/flnxi-website && docker-compose ps' ``` 应该显示容器正在运行(Up状态) ### 2. 检查日志 ```bash ssh root@45.249.208.118 'cd /opt/flnxi-website && docker-compose logs --tail 50' ``` 检查是否有错误 ### 3. 访问网站 浏览器访问:http://45.249.208.118:3000 验证以下内容: #### 首页(Hero) - [x] 显示"推广期特惠:原价¥4,999,限时仅需¥599" - [x] 显示"免费版:10人团队 + 100个素材" - [x] 显示"远程部署¥299"徽章 - [x] 数据卡片显示正确价格 #### 系统功能(SystemFeatures) - [x] 显示12大核心功能 - [x] 付费版功能显示紫色徽章 - [x] 功能卡片悬停效果正常 #### 核心优势(Features) - [x] 显示"为什么选择我们"标题 - [x] 显示8大优势 - [x] 显示免费版vs付费版对比表 #### 价格(Pricing) - [x] 显示三个版本:免费版、付费版、定制版 - [x] 显示远程部署服务卡片(¥299) - [x] 推广期价格¥599正确显示 - [x] 原价¥4,999划线显示 --- ## 🔧 故障排查 ### 问题1:无法连接服务器 **错误信息**: ``` ❌ 无法连接到服务器 45.249.208.118 ``` **解决方案**: 1. 检查网络连接 2. 检查SSH密钥配置 3. 确认服务器IP地址正确 ### 问题2:Docker构建失败 **错误信息**: ``` Error response from daemon: ... ``` **解决方案**: ```bash # 登录服务器 ssh root@45.249.208.118 # 清理Docker缓存 cd /opt/flnxi-website docker system prune -f # 重新构建 docker-compose build --no-cache docker-compose up -d ``` ### 问题3:网站无法访问 **错误信息**: ``` ⚠️ 网站响应异常 (HTTP 000) ``` **解决方案**: ```bash # 查看容器日志 ssh root@45.249.208.118 'cd /opt/flnxi-website && docker-compose logs --tail 100' # 检查容器状态 ssh root@45.249.208.118 'cd /opt/flnxi-website && docker-compose ps' # 重启容器 ssh root@45.249.208.118 'cd /opt/flnxi-website && docker-compose restart' ``` ### 问题4:页面显示不正确 **可能原因**: - 浏览器缓存 - 文件未正确上传 **解决方案**: 1. 清除浏览器缓存(Ctrl+Shift+R 或 Cmd+Shift+R) 2. 检查服务器上的文件是否正确更新 3. 重新部署 --- ## 📝 部署日志示例 ### 成功部署的日志 ```bash 🚀 部署销售官网更新... 检查服务器连接... ✅ 服务器连接成功 步骤 1/6: 打包更新文件... ✅ 文件打包完成 打包内容: - components/Hero.tsx - components/Pricing.tsx - components/Features.tsx - components/SystemFeatures.tsx - app/page.tsx - package.json 步骤 2/6: 上传到服务器... ✅ 上传完成 步骤 3/6: 解压更新文件... ✅ 解压完成 步骤 4/6: 重新构建Docker镜像... ⏳ 这可能需要2-3分钟,请稍候... ✅ Docker镜像已重新构建 步骤 5/6: 启动服务... ✅ 服务已启动 步骤 6/6: 验证部署... ✅ 网站响应正常 (HTTP 200) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 🎉 销售官网更新部署完成! ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 📝 更新内容: ✅ Hero首页组件 ✅ Pricing价格组件 ✅ SystemFeatures系统功能组件 ✅ Features核心优势组件 🌐 访问地址: http://45.249.208.118:3000 ✨ 部署成功! ``` --- ## 🎯 总结 ### 本次更新推荐使用 ```bash bash deploy-website-update.sh ``` **理由**: 1. ✅ 专门为销售页面更新设计 2. ✅ 包含所有本次更新的文件 3. ✅ 速度快(3-5分钟) 4. ✅ 自动验证部署结果 5. ✅ 清晰的进度提示 ### 备选方案 如果遇到问题,可以使用全量同步: ```bash bash deploy.sh ``` --- **祝部署顺利!🚀**