Hầu hết thời gian, bạn nên sử dụng tính năng triển khai tự động hoặc triển khai được kích hoạt theo cách thủ công từ bảng điều khiển Firebase. Tuy nhiên, bạn có thể cần một quy trình triển khai tuỳ chỉnh hơn. App Hosting có nhiều lựa chọn để triển khai tuỳ chỉnh.
Triển khai từ nguồn bằng CLI Firebase
Firebase CLI phiên bản 14.4.0 trở lên cho phép bạn đẩy mã nguồn và cấu hình của ứng dụng trực tiếp từ máy cục bộ lên Firebase. Điều này rất hữu ích nếu bạn có các hoạt động triển khai Firebase khác (chẳng hạn như quy tắc bảo mật hoặc hàm) và muốn triển khai ứng dụng web và dịch vụ phụ trợ cùng với một lệnh CLI.
Khi triển khai, App Hosting sẽ tải mã nguồn của bạn lên một Google Cloud Storage
nhóm lưu trữ, chạy lệnh xây dựng khung trong Cloud Build và triển khai
các cấu phần phần mềm cuối cùng lên Cloud Run và Cloud CDN. App Hosting sử dụng cùng một
quy trình xây dựng cho các hoạt động triển khai nguồn cục bộ như
các hoạt động triển khai GitHub. Nếu bạn có tệp .gitignore trong dự án, thì các tệp và thư mục mà tệp này liệt kê sẽ bị loại trừ khỏi quá trình triển khai.
Cách triển khai ứng dụng từ nguồn cục bộ:
- Chạy
firebase init apphostingtrong thư mục dự án cục bộ. - Khi được nhắc, hãy chọn Use an existing project (Sử dụng dự án hiện có), sau đó chọn dự án Firebase đã chọn.
Chọn một phần phụ trợ mới hoặc hiện có để triển khai; bước này thiết lập App Hosting hoạt động triển khai cho thư mục cục bộ của bạn, yêu cầu bạn cung cấp thông tin App Hosting cần để triển khai ứng dụng thành công:
- Mã nhận dạng của phần phụ trợ cần triển khai
- Vùng cần triển khai (nếu tạo phần phụ trợ mới)
- Đường dẫn đến thư mục gốc của mã xử lý ứng dụng
- Thời gian chạy Node.js mà bạn ưu tiên. Khi bạn chọn thời gian chạy theo phiên bản, tính năng Cập nhật hình ảnh cơ sở tự động (ABIU) sẽ tự động áp dụng các bản vá bảo mật cho môi trường cơ bản của bạn.
App Hosting lưu các lựa chọn ưu tiên về hoạt động triển khai trong
firebase.json(tạo tệp này trong dự án cục bộ của bạn nếu tệp này không tồn tại). Sau khi quá trình khởi chạy hoàn tất thành công, bạn có thể chạyfirebase deployđể triển khai mã nguồn lên App Hosting.
Nếu bạn đã thiết lập các hoạt động triển khai nguồn cục bộ cho nhiều phần phụ trợ (tức là có nhiều mục backendId trong firebase.json), thì firebase deploy sẽ triển khai cho từng phần phụ trợ đó. Để triển khai cho một phần phụ trợ cụ thể, hãy sử dụng
firebase deploy --only apphosting:backendId
Ví dụ về firebase.json
{
"apphosting": [
{
"backendId": "my-backend",
// rootDir specifies the directory containing the app to deploy, but the entire
// parent directory of firebase.json will be zipped and uploaded to ensure that
// dependencies outside of the app directory will be available at build time.
"rootDir": "./my-app",
"ignore": [
"node_modules",
".git",
"firebase-debug.log",
"firebase-debug.*.log",
"functions",
],
},
]
}
Triển khai bằng Terraform
Nếu cần kiểm soát chặt chẽ hơn quy trình xây dựng và môi trường đã triển khai, bạn có thể triển khai bằng Terraform. Terraform cho phép bạn xác định và quản lý các tài nguyên của App Hosting bằng các tệp cấu hình khai báo, đồng thời cung cấp khả năng triển khai hình ảnh vùng chứa dựng sẵn của riêng bạn trực tiếp lên App Hosting thay vì dựa vào App Hosting để xây dựng từ mã nguồn của bạn.
Nếu bạn mới sử dụng Terraform, hãy xem bài viết Bắt đầu sử dụng Terraform và Firebase. Nếu đã quen thuộc với Terraform, bạn có thể bắt đầu bằng các tệp cấu hình mẫu và các tài nguyên khác của App Hosting Dịch vụ lưu trữ ứng dụng.
Thiết lập kết nối GitHub cho CI/CD
Bạn có thể kết nối kho lưu trữ GitHub bất cứ lúc nào trong thẻ Deployment (Triển khai) của phần cài đặt phụ trợ trong bảng điều khiển Firebase. Điều này cho phép bạn triển khai nguyên mẫu ứng dụng từ môi trường cục bộ, sau đó chuyển sang quy trình CI/CD tự động khi bạn đã sẵn sàng.
Triển khai bằng các công cụ AI
Chúng tôi sẽ ngừng cung cấp Firebase Studio vào ngày 22 tháng 3 năm 2027. Mặc dù các phần phụ trợ của App Hosting không bị ảnh hưởng, nhưng nút Publish trong Firebase Studio sẽ ngừng hoạt động. Để tiếp tục xuất bản các bản cập nhật mà không thay đổi URL, hãy di chuyển dự án của bạn. Tìm hiểu cách di chuyển.