Panduan ini memberikan ringkasan pengantar tentang cara layanan Google Cloud lainnya terlibat dalam proses deployment fungsi Cloud Run.
Sebelum memulai
Pahami fungsi Cloud Run dan konsep deployment sumber dari panduan Opsi deployment dan model resource Cloud Run.
Ringkasan arsitektur
Saat Anda men-deploy kode sumber fungsi ke fungsi Cloud Run, kode sumber tersebut disimpan di bucket Cloud Storage. Cloud Build kemudian secara otomatis membangun kode Anda ke dalam image container dan mengirimkan image tersebut ke registry image Artifact Registry. Fungsi Cloud Run mengakses image ini saat perlu menjalankan container untuk mengeksekusi fungsi Anda.
Dalam diagram berikut, kotak fungsi Cloud Run mewakili fungsi yang di-deploy di Cloud Run, menggunakan Cloud Run Admin API atau Cloud Functions API. Biasanya, fungsi yang lebih baru di-deploy menggunakan Cloud Run Admin API, dan fungsi yang lebih lama di-deploy menggunakan Cloud Functions API.
Bergantung pada API yang digunakan saat men-deploy fungsi, hal berikut akan terjadi:
Jika Anda men-deploy fungsi menggunakan Cloud Run Admin API, hal berikut akan terjadi:
Kode sumber Anda diupload ke bucket Cloud Storage yang tidak memiliki periode retensi.
- Jika Anda menggunakan enkripsi default, nama bucket akan
dibuat secara otomatis dan diberi nama
run-sources-PROJECT_ID-REGION
. - Jika Anda melindungi data dengan Kunci enkripsi yang dikelola pelanggan (CMEK), nama bucket tidak dibuat secara otomatis, dan Anda harus memberikan nama bucket.
- Jika Anda menggunakan enkripsi default, nama bucket akan
dibuat secara otomatis dan diberi nama
Kode sumber dikirim ke Cloud Build, tempat buildpack Google Cloud dan Functions Framework membuat image penampung. Perhatikan bahwa akun layanan Cloud Build mem-build image penampung.
Image container Anda kemudian diupload ke Artifact Registry melalui bucket yang dibuat secara otomatis yang disebut
REGION-docker.pkg.dev/PROJECT_ID/cloud-run-source-deploy
.Image di-deploy ke Cloud Run sebagai layanan.
Anda dapat memicu atau memanggil fungsi dengan Eventarc, Pub/Sub, atau pemicu HTTP lainnya.
Jika Anda men-deploy fungsi menggunakan Cloud Functions API (v2), hal berikut akan terjadi:
Kode sumber Anda diupload ke bucket Cloud Storage yang tidak memiliki periode retensi.
Nama bucket dibuat secara otomatis dan mengikuti format ini:
- Jika Anda menggunakan enkripsi default, bucket ini akan diberi nama
gcf-v2-sources-PROJECT_NUMBER-REGION
. - Jika Anda melindungi data dengan CMEK, bucket akan diberi nama
gcf-sources-PROJECT_NUMBER-REGION-CMEK_KEY_HASH
.
- Jika Anda menggunakan enkripsi default, bucket ini akan diberi nama
Kode sumber dikirim ke Cloud Build, tempat buildpack Google Cloud dan Functions Framework membuat image penampung. Perhatikan bahwa akun layanan Cloud Build mem-build image penampung.
Image container Anda kemudian diupload ke Artifact Registry melalui bucket yang dibuat secara otomatis yang disebut
REGION-docker.pkg.dev/PROJECT_ID/gcf-artifacts
.Image di-deploy ke Cloud Run sebagai layanan.
Anda dapat memicu atau memanggil fungsi dengan Eventarc, Pub/Sub, atau pemicu HTTP lainnya.
Langkah berikutnya
- Pelajari berbagai jenis fungsi dan opsi Anda untuk memicu fungsi.
- Jika sebelumnya Anda membuat fungsi dengan Cloud Functions API, lihat panduan perbandingan fungsi Cloud Run untuk mempelajari perbedaan antara dua versi fungsi Cloud Run.