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