Proses build App Hosting

Firebase App Hosting menggunakan Cloud Build untuk mengubah kode sumber aplikasi Anda menjadi format yang di-container dan cocok untuk deployment di Cloud Run.

Proses build beroperasi melalui tahap utama berikut:

  1. Penyerapan: Mengumpulkan kode sumber dan konfigurasi aplikasi Anda.

  2. Build: Menginstal dependensi dan membangun aplikasi Anda.

  3. Penyerahan: Menyelesaikan penampung Cloud Run produksi.

Ketiga langkah ini secara langsung sesuai dengan langkah-langkah build 1, 2, dan 3 seperti yang ditampilkan di Cloud Build di Konsol Google Cloud:

Screenshot tampilan konsol Google Cloud dari langkah-langkah Cloud Build

Tahap penyerapan

Tahap ini bertanggung jawab untuk menangani logika pra-build. Plugin ini membaca, membersihkan, dan menulis variabel lingkungan buatan pengguna. Selain itu, ini juga membatalkan referensi dan menyematkan rahasia yang ditentukan dalam file apphosting.yaml.

Tahap pembangunan

Ini adalah inti dari proses build, yang bertanggung jawab untuk membuat image container yang dapat dijalankan dan file bundle.yaml yang menentukan konfigurasi build Anda. Cara ini menggunakan Buildpack Berbasis Cloud untuk mengemas aplikasi secara efisien. Informasi selengkapnya tentang file bundle.yaml dapat ditemukan di github.

Buildpack bertanggung jawab untuk mengubah kode sumber aplikasi Anda menjadi image container yang siap produksi. Firebase App Hosting menggabungkan beberapa buildpack untuk menyelesaikan proses build:

  1. Runtime Buildpack: Memastikan semua komponen yang diperlukan untuk menjalankan aplikasi Node.js dasar disertakan dan dependensi diinstal.
  2. Buildpack Monorepo: Mengonfigurasi buildpack berikutnya untuk menangani berbagai skenario monorepo.
  3. Buildpack Framework: Menginstal adaptor framework yang benar (seperti Angular atau Next.js) dan menyiapkan buildpack berikutnya.

    Adaptor framework bertanggung jawab untuk menjalankan perintah build yang diproduksi dan memetakan nilai konfigurasi spesifik framework yang relevan ke format standar yang dapat dibaca oleh App Hosting.

  4. Package Manager Buildpack: Mengeksekusi penginstalan dependensi dan membangun aplikasi menggunakan npm, yarn, atau pnpm.

  5. Output Bundle Buildpack: Menentukan perintah run dan menyiapkan paket output untuk dieksekusi.

Tahap pengalihan

Tahap akhir ini memaketkan semua informasi yang diekstrak dari kode sumber aplikasi serta image container build dan mengirimkannya ke backend App Hosting. Backend App Hosting kemudian menggunakan informasi ini untuk menyiapkan Cloud Run dengan konfigurasi yang tepat.

Pelajari lebih lanjut

Seluruh proses build App Hosting bersifat open source.