Sebaiknya gunakan peluncuran otomatis atau peluncuran yang dipicu secara manual dari konsol Firebase. Namun, Anda mungkin memerlukan alur deployment yang lebih disesuaikan. App Hosting memiliki beberapa opsi untuk deployment kustom.
Men-deploy dari sumber dengan Firebase CLI
CLI Firebase memungkinkan Anda mengirim kode sumber dan konfigurasi aplikasi langsung dari mesin lokal ke Firebase. Cara ini praktis jika Anda memiliki deployment Firebase lainnya (seperti aturan keamanan atau fungsi) dan ingin men-deploy aplikasi web dan layanan backend secara bersamaan dengan satu perintah CLI.
Saat deployment, App Hosting mengupload kode sumber Anda ke bucket Google Cloud Storage, menjalankan perintah build framework Anda di Cloud Build, dan men-deploy artefak akhir ke Cloud Run dan Cloud CDN. App Hosting menggunakan proses build yang sama untuk deployment sumber lokal seperti deployment GitHub.
Untuk men-deploy aplikasi Anda dari sumber lokal:
- Jalankan
firebase init apphosting
di direktori project lokal Anda. - Pada perintah, pilih Use an existing project, lalu pilih project Firebase yang dipilih.
Pilih backend baru atau yang sudah ada untuk di-deploy; langkah ini menyiapkan deployment App Hosting untuk direktori lokal Anda, yang meminta informasi yang dibutuhkan App Hosting agar berhasil men-deploy aplikasi Anda:
- ID backend yang akan di-deploy
- Wilayah tempat deployment dilakukan (jika membuat backend baru)
- Jalur ke direktori root kode aplikasi
App Hosting menyimpan preferensi deployment Anda di
firebase.json
(membuat file di project lokal Anda jika tidak ada). Setelah inisialisasi berhasil diselesaikan, Anda dapat menjalankanfirebase deploy
untuk men-deploy kode sumber ke App Hosting.
Jika Anda telah menyiapkan deployment sumber lokal untuk beberapa backend (artinya ada beberapa entri backendId
di firebase.json
), firebase deploy
akan di-deploy ke setiap backend tersebut. Untuk men-deploy ke backend tertentu, gunakan
firebase deploy --only apphosting:backendId
Contoh 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",
],
},
]
}
Men-deploy menggunakan Terraform
Jika memerlukan kontrol yang lebih besar atas proses build dan lingkungan yang di-deploy, Anda dapat men-deploy menggunakan Terraform. Terraform memungkinkan Anda menentukan dan mengelola resource App Hosting menggunakan file konfigurasi deklaratif, dan memberikan kemampuan untuk men-deploy image container bawaan Anda sendiri langsung ke App Hosting, bukan mengandalkan App Hosting untuk membangun dari kode sumber Anda.
Jika Anda baru menggunakan Terraform, lihat Mulai menggunakan Terraform dan Firebase. Jika sudah memahami Terraform, Anda dapat memulai dengan file konfigurasi contoh dan resource App Hosting lainnya.
Men-deploy menggunakan Firebase Studio
Saat membuat aplikasi web dengan agen Pembuatan Prototipe Aplikasi di Firebase Studio, Anda dapat memublikasikan, atau men-deploy, ke Firebase App Hosting langsung dari Firebase Studio. Lihat Memublikasikan aplikasi Anda dengan App Hosting.