xiaso-flnxi-website/部署脚本使用说明.md
Your Name b1eab32c75 初始提交: FLNXI电商素材系统官方网站
- Next.js 项目框架
- 完整的认证系统集成
- 数据库配置和部署脚本
- 产品价格体系和文档
- Docker 部署配置
2025-12-13 21:38:32 +08:00

8.6 KiB
Raw Permalink Blame History

部署脚本使用说明

📅 更新时间

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

部署流程

  1. 检查服务器连接
  2. 打包更新的组件文件
  3. 上传到服务器
  4. 解压文件
  5. 重新构建Docker镜像
  6. 启动服务
  7. 验证部署

预计时间

3-5分钟

优点

  • ✅ 只更新必要文件,速度快
  • ✅ 包含所有本次更新的组件
  • ✅ 自动验证部署结果
  • ✅ 清晰的进度提示

2️⃣ deploy.sh ⭐⭐⭐⭐

全量同步脚本,适合大版本更新

适用场景

  • ✅ 首次部署
  • ✅ 大版本更新(多个模块修改)
  • ✅ 需要同步所有文件

使用方法

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

# 只打包这些文件
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

解决方案:

  1. 检查网络连接
  2. 检查SSH密钥配置
  3. 确认服务器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:页面显示不正确

可能原因:

  • 浏览器缓存
  • 文件未正确上传

解决方案:

  1. 清除浏览器缓存(Ctrl+Shift+R 或 Cmd+Shift+R)
  2. 检查服务器上的文件是否正确更新
  3. 重新部署

📝 部署日志示例

成功部署的日志

🚀 部署销售官网更新...

检查服务器连接...
✅ 服务器连接成功

步骤 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

理由:

  1. ✅ 专门为销售页面更新设计
  2. ✅ 包含所有本次更新的文件
  3. ✅ 速度快(3-5分钟)
  4. ✅ 自动验证部署结果
  5. ✅ 清晰的进度提示

备选方案

如果遇到问题,可以使用全量同步:

bash deploy.sh

祝部署顺利!🚀