Halaman ini menjelaskan cara men-deploy aplikasi ke fungsi Cloud Run menggunakan Cloud Build. Jika Anda baru menggunakan Cloud Build, baca panduan memulai dan Ringkasan konfigurasi build terlebih dahulu.
Cloud Run functions adalah lingkungan eksekusi tanpa server untuk membuat dan menghubungkan layanan cloud. Dengan Cloud Run Functions, Anda menulis fungsi-fungsi sederhana dan bertujuan tunggal yang dilampirkan ke peristiwa yang muncul dari infrastruktur serta layanan cloud Anda. Fungsi Anda dipicu saat peristiwa yang sedang dipantau diaktifkan. Untuk mengetahui informasi selengkapnya tentang fungsi Cloud Run, baca dokumentasi fungsi Cloud Run.
Sebelum memulai
Aktifkan Cloud Run Functions API:
Berikan peran Developer fungsi Cloud Run ke akun layanan Cloud Build:
-
Di konsol Google Cloud , buka halaman settings Cloud Build Permissions:
Tetapkan status peran Developer fungsi Cloud Run ke Aktifkan.
-
Untuk menjalankan perintah
gcloud
di halaman ini, instal Google Cloud CLI.Siapkan kode sumber aplikasi yang ingin Anda bangun dan deploy ke fungsi Cloud Run. Kode sumber Anda harus disimpan dalam repositori, seperti Cloud Source Repositories, GitHub, atau Bitbucket.
Mengonfigurasi deployment
Cloud Build memungkinkan Anda menggunakan image container yang tersedia secara publik untuk menjalankan tugas. Anda dapat melakukannya dengan menentukan image dalam build step
di file konfigurasi Cloud Build.
Fungsi Cloud Run menyediakan perintah gcloud functions deploy
, yang men-deploy fungsi Anda dari direktori yang berisi kode fungsi Anda.
Anda dapat menggunakan
image cloud-sdk
sebagai langkah build dalam file konfigurasi untuk memanggil perintah gcloud
dalam image.
Argumen yang diteruskan ke langkah build ini diteruskan langsung ke Google Cloud CLI,
sehingga Anda dapat menjalankan perintah gcloud
apa pun di image ini.
Untuk men-deploy aplikasi ke fungsi Cloud Run, gunakan langkah-langkah berikut:
- Di direktori root project Anda, buat
file konfigurasi Cloud Build
bernama
cloudbuild.yaml
ataucloudbuild.json
. Di file konfigurasi:
- Tambahkan kolom
name
dan tentukan langkah buildgcloud
. - Tambahkan
functions deploy
ke kolomargs
untuk memanggil perintahgcloud functions deploy
. Untuk opsi konfigurasi yang tersedia, lihat Referensigcloud functions deploy
. --source=.
menyiratkan bahwa kode sumber berada di direktori kerja saat ini.
YAML
steps: - name: 'gcr.io/google.com/cloudsdktool/cloud-sdk' args: - gcloud - functions - deploy - FUNCTION_NAME - --region=FUNCTION_REGION - --source=. - --trigger-http - --runtime=RUNTIME
JSON
{ "steps": [ { "name": "gcr.io/google.com/cloudsdktool/cloud-sdk", "args": [ "gcloud", "functions", "deploy", [ "FUNCTION_NAME" ], "--region=FUNCTION_REGION", "--source=.", "--trigger-http", "--runtime=RUNTIME" ] } ] }
Ganti nilai placeholder dalam file config di atas dengan nilai berikut:
FUNCTION_NAME
adalah nama fungsi Cloud Run yang Anda deploy. Jika Anda mengupdate fungsi yang sudah ada, nilai ini harus cocok dengan nama fungsi yang Anda update.FUNCTION_REGION
adalah region tempat Anda men-deploy fungsi Cloud Run. Untuk mengetahui daftar region yang didukung, lihat Lokasi fungsi Cloud Run.--trigger-http
adalah jenis pemicu untuk fungsi ini, dalam hal ini permintaan HTTP (webhook).RUNTIME
adalah runtime yang digunakan untuk menjalankan fungsi.
Untuk mengetahui informasi selengkapnya tentang cara menggunakan
gcloud functions deploy
, lihat dokumentasi Cloud Run Functions.- Tambahkan kolom
Mulai build menggunakan file konfigurasi yang dibuat pada langkah sebelumnya:
gcloud builds submit --region=REGION --config CONFIG_FILE_PATH SOURCE_DIRECTORY
Ganti nilai placeholder dalam file config di atas dengan nilai berikut:
CONFIG_FILE_PATH
adalah jalur ke file konfigurasi build.SOURCE_DIRECTORY
adalah jalur atau URL ke kode sumber.REGION
adalah salah satu wilayah build yang didukung.
Jika Anda tidak menentukan
CONFIG_FILE_PATH
danSOURCE_DIRECTORY
dalam perintahgcloud builds submit
, Cloud Build mengasumsikan bahwa file konfigurasi dan kode sumber berada di direktori kerja saat ini.
Deployment berkelanjutan
Anda dapat mengotomatiskan deployment software ke fungsi Cloud Run dengan membuat pemicu Cloud Build. Anda dapat mengonfigurasi pemicu untuk mem-build dan men-deploy image setiap kali Anda mengupdate kode sumber.
Untuk mengotomatiskan deployment ke fungsi Cloud Run:
Di root repositori Anda, tambahkan file konfigurasi dengan langkah-langkah untuk memanggil perintah
gcloud functions deploy
:YAML
steps: - name: 'gcr.io/google.com/cloudsdktool/cloud-sdk' args: - gcloud - functions - deploy - FUNCTION_NAME - --region=FUNCTION_REGION - --source=. - --trigger-http - --runtime=RUNTIME
JSON
{ "steps": [ { "name": "gcr.io/google.com/cloudsdktool/cloud-sdk", "args": [ "gcloud", "functions", "deploy", [ "FUNCTION_NAME" ], "--region=FUNCTION_REGION", "--source=.", "--trigger-http", "--runtime=RUNTIME" ] } ] }
Ganti nilai placeholder dalam file config di atas dengan nilai berikut:
FUNCTION_NAME
adalah nama fungsi Cloud Run yang Anda deploy. Jika Anda mengupdate fungsi yang sudah ada, nilai ini harus cocok dengan nama fungsi yang Anda update.FUNCTION_REGION
adalah region tempat Anda men-deploy fungsi Cloud Run. Untuk mengetahui daftar region yang didukung, lihat Lokasi fungsi Cloud Run.--trigger-http
adalah jenis pemicu untuk fungsi ini, dalam hal ini permintaan HTTP (webhook).RUNTIME
adalah runtime yang digunakan untuk menjalankan fungsi.
Buat pemicu build dengan file konfigurasi yang dibuat pada langkah sebelumnya:
Buka halaman Pemicu di konsol Google Cloud :
Pilih project Anda dari menu drop-down pemilih project di bagian atas halaman.
Klik Create Trigger.
Di kolom Nama, masukkan nama pemicu Anda.
Di bagian Region, pilih region untuk pemicu Anda.
Di bagian Peristiwa, pilih peristiwa repositori untuk memulai pemicu Anda.
Di bagian Sumber, pilih repositori dan cabang atau nama tag yang akan memulai pemicu Anda. Untuk informasi selengkapnya tentang menentukan cabang yang akan otomatis di-build, lihat Membuat pemicu build.
Di bagian Konfigurasi, pilih File konfigurasi Cloud Build (YAML atau JSON).
Di kolom Lokasi file konfigurasi Cloud Build, ketik
cloudbuild.yaml
setelah/
.Klik Buat untuk menyimpan pemicu build Anda.
Setiap kali Anda melakukan push kode baru ke repositori, Anda akan otomatis memicu build dan deployment pada fungsi Cloud Run.
Untuk mengetahui informasi selengkapnya tentang cara membuat pemicu Cloud Build, lihat Membuat dan mengelola pemicu build.
Langkah berikutnya
- Pelajari cara melakukan deployment biru/hijau di Compute Engine
- Pelajari cara men-deploy di Cloud Run
- Pelajari cara men-deploy di GKE
- Pelajari cara men-deploy di Firebase
- Pelajari cara men-deploy di App Engine
- Pelajari cara memecahkan masalah error build.