将 Codofly Template 部署到生产环境
登录 Vercel
导入项目
配置项目
pnpm build
pnpm install
部署
# 数据库 DATABASE_URL=your_production_database_url # NextAuth NEXTAUTH_URL=https://your-domain.vercel.app NEXTAUTH_SECRET=your_production_secret # OAuth 提供商 GITHUB_CLIENT_ID=your_github_client_id GITHUB_CLIENT_SECRET=your_github_client_secret GOOGLE_CLIENT_ID=your_google_client_id GOOGLE_CLIENT_SECRET=your_google_client_secret # Stripe STRIPE_SECRET_KEY=your_stripe_secret_key STRIPE_WEBHOOK_SECRET=your_stripe_webhook_secret # AI 服务 OPENAI_API_KEY=your_openai_api_key ANTHROPIC_API_KEY=your_anthropic_api_key
添加域名
配置 DNS
验证
# 安装 Vercel Postgres pnpm add @vercel/postgres # 在 Vercel 控制台创建数据库 # 获取连接字符串并添加到环境变量 DATABASE_URL=postgres://user:pass@host:port/db?sslmode=require
# 1. 在 neon.tech 创建数据库 # 2. 获取连接字符串 DATABASE_URL=postgresql://user:pass@host/db?sslmode=require # 3. 运行迁移 npx prisma migrate deploy
# 部署数据库迁移 npx prisma migrate deploy # 生成 Prisma Client npx prisma generate # 添加种子数据(可选) npx prisma db seed
DATABASE_URL= # 数据库连接 NEXTAUTH_URL= # 应用域名 NEXTAUTH_SECRET= # JWT 签名密钥(随机字符串)
# OAuth GITHUB_CLIENT_ID= GITHUB_CLIENT_SECRET= GOOGLE_CLIENT_ID= GOOGLE_CLIENT_SECRET= # 支付 STRIPE_SECRET_KEY= STRIPE_WEBHOOK_SECRET= # AI 服务 OPENAI_API_KEY= ANTHROPIC_API_KEY=
NEXTAUTH_SECRET
/** @type {import('next').NextConfig} */ const nextConfig = { experimental: { ppr: true, }, compress: true, poweredByHeader: false, images: { domains: ['your-image-domains.com'], }, } module.exports = nextConfig
export async function GET() { const users = await prisma.user.findMany() return NextResponse.json( { data: users }, { headers: { 'Cache-Control': 'public, s-maxage=60, stale-while-revalidate=300' } } ) }
# 检查构建日志 # 确保所有依赖已安装 # 检查环境变量配置
# 检查 DATABASE_URL 格式 # 确保数据库允许外部连接 # 运行数据库迁移
# 检查 DNS 配置 # 确保 NEXTAUTH_URL 正确 # 清除浏览器缓存