本项目已支持使用 Vercel Postgres 作为数据库后端,可在 Vercel 平台上稳定部署。
在 Vercel 项目设置中添加以下环境变量:
| 变量名 | 说明 | 示例值 |
|---|---|---|
NEXT_PUBLIC_STORAGE_TYPE |
存储类型 | postgres |
POSTGRES_URL |
Vercel Postgres 连接字符串 | postgres://... |
USERNAME |
管理员用户名 | admin |
PASSWORD |
管理员密码 | your_password |
Vercel Postgres 会自动提供以下环境变量:
POSTGRES_URL- 完整连接字符串POSTGRES_PRISMA_URL- Prisma 兼容连接字符串POSTGRES_URL_NON_POOLING- 无连接池连接字符串POSTGRES_USER- 数据库用户名POSTGRES_HOST- 数据库主机POSTGRES_PASSWORD- 数据库密码POSTGRES_DATABASE- 数据库名称
通常只需要使用 POSTGRES_URL 即可。
# 安装 Vercel CLI
npm i -g vercel
# 登录 Vercel
vercel login
# 创建 Postgres 数据库
vercel postgres create
# 选择数据库并连接到项目
vercel postgres connect# 运行数据库初始化脚本
pnpm init:postgres# 部署项目
vercel --prod由于 Vercel 的 serverless 环境限制,以下功能不可用:
- 观影室 (Watch Room) - 需要 WebSocket 支持,Vercel serverless 不支持长时间运行的连接
| 存储类型 | 部署平台 | 数据持久化 | 说明 |
|---|---|---|---|
localstorage |
任意 | ❌ 浏览器本地 | 仅用于测试 |
d1 |
Cloudflare | ✅ | Cloudflare D1 数据库 |
postgres |
Vercel | ✅ | Vercel Postgres 数据库 |
redis |
自建服务器 | ✅ | Redis 数据库 |
upstash |
Vercel | ✅ | Upstash Redis |
kvrocks |
自建服务器 | ✅ | Kvrocks 数据库 |
如果需要从其他存储类型迁移数据到 Vercel Postgres,请使用管理后台的数据迁移功能。
- 数据库配额:Vercel Postgres 免费版有 256 MB 存储限制
- 连接池:Vercel Postgres 自动管理连接池,无需手动配置
- 冷启动:首次请求可能需要几秒钟冷启动时间