Bỏ qua để đến nội dung

Phát Triển Cục Bộ

Các dự án được kết nối cung cấp hai target để chạy chúng trên máy của bạn: servedev. Sự khác biệt là về phạm vi — bao nhiêu phần của ứng dụng chạy cục bộ so với việc trỏ đến cơ sở hạ tầng AWS đã triển khai.

Xem xét một workspace với các kết nối sau: một website gọi một api tRPC, và cũng gọi một agent mà lần lượt gọi một máy chủ mcp.

Target serve chỉ chạy dự án được chỉ định cục bộ. Mọi dự án khác mà nó kết nối đến được mong đợi là đã triển khai, và được truy cập tại URL AWS thực của chúng.

Terminal window
pnpm nx serve website

Bởi vì dự án được chỉ định giao tiếp với các tài nguyên đã triển khai, nó cần biết chúng ở đâu. Đối với một website, điều này được cung cấp bởi runtime-config.json của nó (xem Local Runtime Config), mà bạn tải từ một ứng dụng đã triển khai. Đối với các dự án phía máy chủ (API và agent) đọc Runtime Configuration, đặt biến môi trường RUNTIME_CONFIG_APP_ID để trỏ đến ứng dụng AppConfig đã triển khai của bạn.

Diagram

Sử dụng serve khi bạn muốn lặp lại trên một dự án duy nhất so với các phiên bản “thực”, đã triển khai của mọi thứ mà nó phụ thuộc vào.

Target dev chạy dự án được chỉ địnhmọi dự án được kết nối với nó một cách bắc cầu, tất cả trên máy của bạn. Trình tạo kết nối tự động thiết lập điều này — chạy dev trên website cũng khởi động các máy chủ cục bộ cho api, agent, và máy chủ mcp mà nó truy cập thông qua agent.

Terminal window
pnpm nx dev website

Khi chạy theo cách này, runtime-config.json của website được tự động ghi đè (thông qua Vite’s MODE, được đặt thành local-dev) để nó trỏ đến các máy chủ đang chạy cục bộ của bạn thay vì các URL đã triển khai.

Diagram

Mọi dự án đều chạy cục bộ, vì vậy không có phụ thuộc đã triển khai.

Sử dụng dev khi bạn đang làm việc trên nhiều dự án được kết nối cùng một lúc và muốn lặp lại nhanh chóng mà không cần triển khai cơ sở hạ tầng của bạn.

Một số loại dự án có thể chứa nhiều thành phần trong một dự án duy nhất (ví dụ như một dự án TypeScript hoặc Python chứa nhiều agent và máy chủ MCP). Đối với những dự án này:

  • Target dev cấp dự án khởi động tất cả các thành phần của dự án cùng nhau. Mỗi thành phần được thêm vào dev khi nó được tạo:
Terminal window
pnpm nx dev my-project
  • Mỗi thành phần cũng cung cấp một target <component-name>-dev, vì vậy bạn có thể chạy một thành phần duy nhất riêng lẻ:
Terminal window
pnpm nx my-component-dev my-project

Để biết thêm chi tiết về máy chủ phát triển cục bộ của từng loại dự án, xem hướng dẫn liên quan — ví dụ như hướng dẫn React Website.