~/VibeHandbook
PDF miễn phí

Chương 13 · 05

AI đấu nối các bản triển khai và cấu hình như thế nào

Đây là nơi vibe coding tỏa sáng. Cấu hình triển khai (deployment) chính xác là loại công việc chính xác, được tài liệu hóa tốt, đầy tính lặp lại mà AI làm rất giỏi. Bạn chỉ đạo; nó viết.

Các hiệu quả nghe như thế này:

  • "Thêm một Dockerfile cho ứng dụng Node này và một cấu hình Railway để triển khai nó."
  • "Viết một luồng công việc GitHub Actions triển khai thư mục dist/ lên Cloudflare Pages mỗi khi có push lên main."
  • "Tôi đang gặp lỗi hết giờ do cold-start ở function của mình — nguyên nhân có thể là gì và làm sao để sửa cấu hình?"

Đây là kiểu file mà AI sẽ tạo ra cho bạn — một luồng triển khai tự động gửi một trang tĩnh lên mỗi khi bạn push code:

# .github/workflows/deploy.yml
name: Deploy
on:
  push:
    branches: [main]
jobs:
  build-and-deploy:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-node@v4
        with:
          node-version: 20
      - run: npm ci && npm run build
      - name: Publish to Cloudflare Pages
        uses: cloudflare/wrangler-action@v3
        with:
          apiToken: ${{ secrets.CF_API_TOKEN }}
          command: pages deploy dist --project-name=my-app

Bạn không cần thuộc lòng cú pháp này. Bạn cần nhận ra nó làm gì: mỗi khi có push lên main, nó lấy code của bạn ra, build nó, và xuất bản kết quả. Khi có gì đó hỏng, bạn dán lỗi lại cho AI và nhờ nó sửa cấu hình.

Nhiều người xây dựng bỏ qua hoàn toàn file GitHub Actions lúc đầu và chỉ triển khai từ của chính họ bằng một câu lệnh. Đó thường là cách nhanh nhất để thấy thứ gì đó chạy thật ngay ngày đầu. Cùng một bản triển khai Cloudflare Pages đó trông như thế này từ dòng lệnh:

# install the CLI once
npm install -g wrangler

# build your site, then push the output folder live
npm run build
wrangler pages deploy dist --project-name=my-app

Lần chạy đầu tiên sẽ yêu cầu bạn đăng nhập qua trình duyệt; sau đó chỉ còn là một câu lệnh duy nhất. Sự đánh đổi rất đơn giản: câu lệnh terminal rất hợp cho "triển khai ngay bây giờ", còn file GitHub Actions rất hợp cho "triển khai tự động mãi mãi". Hầu hết dự án bắt đầu với cách đầu và thêm cách sau khi việc triển khai trở thành thường lệ. Hỏi AI để chọn cách phù hợp với giai đoạn bạn đang ở.

Một vài mẹo chỉ đạo giúp tránh phiền toái thật sự:

  • Bắt AI giải thích trước khi hành động. "Trước khi viết cấu hình, hãy cho tôi biết loại hosting nào phù hợp với dự án này và tại sao." Điều này bắt được việc thiết kế thừa mứa (over-engineering) từ sớm.
  • Giữ bí mật ra khỏi code. key và mật khẩu nên nằm trong biến môi trường / kho lưu trữ bí mật của nền tảng, không bao giờ trong các file bạn . Nhờ AI dùng một tham chiếu bí mật, như CF_API_TOKEN ở trên.
  • Triển khai sớm, triển khai thường xuyên. Có một "hello world" chạy thật ngay ngày đầu tiên. Một pipeline đã hoạt động từ đầu dễ gỡ lỗi hơn nhiều so với một pipeline được lắp ráp vào lúc ra mắt.
  • Hỏi trước về kịch bản rollback (quay lại phiên bản cũ). "Nếu bản triển khai này bị hỏng, làm sao tôi quay lại phiên bản đang chạy tốt?" Các nền tảng tốt giữ các bản triển khai trước đó chỉ cách một cú click. Biết trước rằng nút hoàn tác tồn tại trước khi bạn cần nó biến một cơn hoảng loạn lúc 2 giờ sáng thành một cái nhún vai.

Muốn bản ngoại tuyến?

Tải trọn cuốn sách dưới dạng PDF hoặc EPUB — miễn phí.