Triển khai Production
Checklist thực dụng để đưa Data Explorer lên web thật, gồm Render/Vercel, env bắt buộc, migration, OAuth callback, và những lỗi deploy hay gặp nhất.
Frontend: Vercel
Phù hợp để deploy client nhanh, CDN tốt, và chỉ cần trỏ VITE_API_URL về backend.
Backend: Render
Phù hợp để chạy NestJS backend và Prisma, miễn là build command có bước sync schema trước khi boot.
1. Build commands khuyên dùng
Backend service (Render)
npm run build
npm run start:prod
Chạy `npx prisma migrate deploy` trước khi khởi động app. Render Blueprint trong repo đã thực hiện bước này và chỉ đưa phiên bản mới vào phục vụ khi readiness check thành công.
Frontend service (Vercel)
VITE_API_URL=https://your-backend-domain.com/api
2. Biến môi trường bắt buộc
DATABASE_URLJWT_SECRETREFRESH_TOKEN_SECRETENCRYPTION_KEYFRONTEND_URLAPI_PUBLIC_URLREDIS_URLADMIN_EMAILADMIN_PASSWORD3. OAuth checklist
- GOOGLE_CALLBACK_URL và GITHUB_CALLBACK_URL phải trỏ về backend thật, ví dụ https://your-backend.onrender.com/api/auth/google/callback.
- FRONTEND_URL phải khớp origin thực tế của client, nếu không exchange flow sau /login#code=... sẽ fail.
- Với frontend và backend khác domain ở production, hãy dùng HTTPS để refresh-token cookie có thể chạy với secure + sameSite phù hợp.
- Sau mỗi lần đổi env OAuth, redeploy backend để callback/controller nạp cấu hình mới.
4. AI provider envs
# Premium lane
GEMINI_API_KEY=...
AI_PROVIDER_TIMEOUT_MS=90000
AI_STREAM_IDLE_TIMEOUT_MS=90000
# Lower-cost lane
CEREBRAS_API_KEY=...
CEREBRAS_BASE_URL=https://api.cerebras.ai/v1
CEREBRAS_CHAT_MODEL=llama3.1-8b
# Flexible / fallback lane
OPENROUTER_API_KEY=...
OPENROUTER_BASE_URL=https://openrouter.ai/api/v1
OPENROUTER_CHAT_MODEL=
# Low-latency lane
GROQ_API_KEY=...
GROQ_BASE_URL=https://api.groq.com/openai/v1
GROQ_CHAT_MODEL=openai/gpt-oss-120b
# Explicit Beeknoee lane
BEEKNOEE_API_KEY=...
BEEKNOEE_BASE_URL=https://platform.beeknoee.com/api/v1
BEEKNOEE_CHAT_MODEL=glm-4.7-flash
Nếu bạn muốn dùng ảnh đính kèm trong AI chat ở production, hãy cấu hình ít nhất một lane có vision thật như Gemini hoặc một model OpenRouter hỗ trợ ảnh.
5. Những lỗi deploy hay gặp
Schema lệch
Backend lên code mới nhưng migration chưa được áp dụng, gây lỗi 500 ở login hoặc dashboard APIs.
Secret yếu
JWT_SECRET placeholder sẽ làm backend không khởi động được.
Callback sai domain
Google/GitHub login fail nếu callback URL hoặc FRONTEND_URL không khớp deployment thật.
Nếu bạn muốn ship an toàn: dùng Vercel cho client, Render Blueprint cho backend, set env chuẩn, chạy migration trước khi start, rồi test login + readiness + 1 query thật trước khi public.
Sẵn sàng khám phá dữ liệu?
Tham gia cộng đồng trên GitHub để đóng góp cho IDE cơ sở dữ liệu địa phương thông minh nhất.
Mở Ứng dụng