🚀 Cheatsheet: Đưa app vibe-code lên production: domain, HTTPS và deploy an toàn

By Better Wise

Tip: Thứ tự vàng: deploy → domain → HTTPS → tách env → log + uptime → backup + rollback → go-live checklist. Đừng bỏ qua bước nào, mỗi bước đều có thể làm sập app lúc 2 giờ sáng.


Module 1: Đưa app từ local lên internet

1.1 Chọn hosting và deploy bản đầu tiên

Chọn hosting theo loại app:

Loại app Gợi ý hosting Ghi chú
Static (HTML/CSS/JS, Vite, Next export) Vercel, Netlify, Cloudflare Pages, GitHub Pages Free tier rộng, deploy bằng git push
Node.js / Express / Next.js (SSR) Render, Railway, Fly.io, Vercel Cần build + start command
Python (Flask, FastAPI, Django) Render, Railway, Fly.io Cần requirements.txt / pyproject.toml
Database đi kèm Managed DB của hosting hoặc Supabase / Neon Đừng tự cài DB trên VPS nếu mới bắt đầu
VPS tự quản (DigitalOcean, Linode) Khi cần toàn quyền Tự lo OS, firewall, backup, SSL

Checklist trước khi deploy lần đầu:

  • Code đã push lên GitHub (repo private cũng được)
  • Có file package.json với script build và start
  • Có .gitignore (đặc biệt .env, node_modules)
  • Đã chọn đúng runtime version (Node 20, Python 3.12, ...)
  • App đọc PORT từ biến môi trường, không hardcode 3000

Lệnh kiểm tra app chạy được ở local trước khi deploy:

npm install
npm run build
npm start            # phải truy cập được http://localhost:3000

Cấu hình start command thường gặp:

Nền tảng Build command Start command
Node.js npm install && npm run build npm start
Next.js npm run build npm start
Python (FastAPI) pip install -r requirements.txt uvicorn main:app --host 0.0.0.0 --port $PORT

Warning: App phải bind 0.0.0.0, không phải 127.0.0.1. Bind localhost thì hosting không truy cập được, đây là lỗi phổ biến nhất của lần deploy đầu.

Sau khi deploy xong, kiểm tra ngay:

curl -I https://<url-tam-cua-hosting>
# Kỳ vọng: HTTP/2 200

This cheatsheet is premium content. Sign in and purchase the course to view the full content. Sign in