用途:将 Next.js 应用部署到 Vercel,并完成生产环境配置。适用于首次部署、为 PR 设置预览部署、配置自定义域名、管理生产环境变量等场景。
前置条件:本地可成功构建的 Next.js 应用;推荐使用 GitHub 仓库或本地项目;自定义域名与环境变量为可选项。
主要步骤:
- 本地验证构建:npm run build,失败需先修复 TypeScript 错误、缺失依赖或无效导入。
- 安装 CLI:npm install -g vercel,权限报错可用 sudo npm install -g vercel 或配置用户级前缀。
- 登录并链接部署:vercel login 后执行 vercel,按提示选择账号、是否链接已有项目、项目名与目录。首次部署会生成预览 URL。
- 配置环境变量:vercel env add DATABASE_URL production、vercel env add API_KEY production preview,用 vercel env ls 查看;也可在仪表盘 Project Settings > Environment Variables 配置。新增变量后需重新部署。
- 生产部署:vercel --prod,失败可用 vercel logs 或仪表盘查看日志。
- 连接 GitHub 自动部署:在 https://vercel.com/new 导入仓库,推送 main 触发生产部署,PR 触发预览部署。
- 自定义域名:vercel domains add my-domain.com,或通过 Project Settings > Domains 配置,并按提示更新 DNS(通常为 CNAME 或 A 记录),传播最长约 48 小时。
- 优化配置:在项目根目录创建 vercel.json,可设置 framework、regions、headers 等;配置被忽略时用 jq . vercel.json 校验 JSON。
验证要点:本地构建成功、预览与生产部署可访问、生产环境变量可用、自定义域名可解析、GitHub 集成能触发部署。
常见限制与坑:Vercel 使用干净环境,依赖必须写入 package.json;环境变量需在 Vercel 配置而非仅 .env.local,且生产、预览、开发环境变量相互独立;注意 Node.js 版本一致性;部署有体积限制,可用 .vercelignore 排除文件;Hobby 计划下 Serverless 函数超时为 10 秒。
相关技能:scaffold-nextjs-app、setup-tailwind-typescript、configure-git-repository。