用户指南应用部署
应用部署
TinyShip 部署指南
TinyShip 支持多种部署方式,您可以根据需求选择适合的方案。
部署方式对比
| 部署方式 | 适用场景 | 优点 | 缺点 | 难度 |
|---|---|---|---|---|
| 云平台部署 | 生产环境 | 自动扩展、免运维 | 可能有供应商锁定 | 简单 |
| Docker 部署 | 容器化环境 | 环境一致、易扩展 | 需要 Docker 知识 | 中等 |
| 传统部署 | 开发/测试环境 | 简单直接、版本控制方便 | 服务器需要开发环境、构建慢 | 复杂 |
推荐方案
部署前准备
无论选择哪种部署方式,都需要完成以下准备:
- 配置生产环境变量
- 设置生产数据库
- 配置域名和 SSL 证书
- 更新回调 URL 为生产域名
环境变量清单
# 必需配置
DATABASE_URL="postgresql://..."
BETTER_AUTH_SECRET="your-32-char-secret"
BETTER_AUTH_URL="https://yourdomain.com"
# 根据功能需要配置
STRIPE_SECRET_KEY="sk_live_..."
STRIPE_WEBHOOK_SECRET="whsec_..."
OPENAI_API_KEY="sk-..."通用准备工作
-
环境变量配置
# 复制环境变量模板 cp .env.example .env # 编辑配置实际的生产环境变量 -
数据库准备
pnpm db:generate pnpm db:migrate pnpm db:check -
健康检查
- Next.js:
http://your-domain/api/health - Nuxt.js:
http://your-domain/api/health
- Next.js:
选择部署方式
快速命令对比
| 操作 | 传统部署 | Docker 部署 | 云平台部署 |
|---|---|---|---|
| 构建 | pnpm build:next | docker build -t tinyship-next . | 自动构建 |
| 启动 | pnpm start:next | docker compose --profile next up -d | 自动部署 |
| 查看日志 | pm2 logs tinyship-next | docker compose logs -f | 平台控制台 |
| 重启 | pm2 restart tinyship-next | docker compose restart | 平台控制台 |
特性支持对比
| 特性 | 传统部署 | Docker 部署 | 云平台部署 |
|---|---|---|---|
| 环境隔离 | 否 | 是 | 是 |
| 自动重启 | 是 (PM2) | 是 | 是 |
| 水平扩展 | 否 | 手动配置 | 是 |
| 零停机部署 | 否 | 手动配置 | 是 |
| 自动备份 | 否 | 否 | 是 |
| 监控告警 | 手动配置 | 手动配置 | 是 |
部署检查清单
部署前检查
- 环境变量已配置 (
.env) - 数据库连接正常 (
pnpm db:check) - 所有依赖已安装 (
pnpm install) - 应用能正常构建 (
pnpm build:next或pnpm build:nuxt)
部署后验证
- 应用能正常访问
- 健康检查端点正常 (
/api/health) - 数据库操作正常
- 静态资源加载正常
- 认证功能正常
生产环境额外检查
- HTTPS 证书有效
- 日志记录正常
- 监控和告警配置
- 备份策略实施
- 性能优化完成
获取帮助
遇到问题?查看对应部署方式的故障排除章节: