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 merepresentasikan
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.
Gambar 1. Pengguna menyiapkan kode sumber fungsi dan
men-deploy-nya ke Cloud Run.
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.
Kode sumber dikirimkan ke Cloud Build, tempat buildpack Google Cloud dan Functions Framework membuat image container. Perhatikan bahwa akun layanan Cloud Build membangun image
penampung. Secara default, Cloud Run menggunakan
jenis mesin e2-standard-2
yang disediakan oleh Cloud Build.
Image container Anda kemudian diupload ke Artifact Registry melalui bucket yang dibuat secara otomatis bernama 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.
Kode sumber dikirimkan ke Cloud Build, tempat buildpack Google Cloud dan Functions Framework membuat image container. Perhatikan bahwa akun layanan Cloud Build membangun image
penampung. Secara default, Cloud Run menggunakan
jenis mesin e2-standard-2
yang disediakan oleh Cloud Build.
Image container Anda kemudian diupload ke Artifact Registry melalui bucket yang dibuat secara otomatis bernama 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.
Jika sebelumnya Anda membuat fungsi dengan Cloud Functions API, lihat
Panduan perbandingan fungsi Cloud Run
untuk mempelajari perbedaan antara dua versi fungsi Cloud Run.
[[["Mudah dipahami","easyToUnderstand","thumb-up"],["Memecahkan masalah saya","solvedMyProblem","thumb-up"],["Lainnya","otherUp","thumb-up"]],[["Sulit dipahami","hardToUnderstand","thumb-down"],["Informasi atau kode contoh salah","incorrectInformationOrSampleCode","thumb-down"],["Informasi/contoh yang saya butuhkan tidak ada","missingTheInformationSamplesINeed","thumb-down"],["Masalah terjemahan","translationIssue","thumb-down"],["Lainnya","otherDown","thumb-down"]],["Terakhir diperbarui pada 2025-09-04 UTC."],[],[],null,["# Cloud Run functions overview\n\nThis guide provides an introductory overview of how other Google Cloud services\nare involved in the Cloud Run functions deployment process.\n\nBefore you begin\n----------------\n\nFamiliarize yourself with Cloud Run functions and source deployment\nconcepts from the\n[Cloud Run deployment options and resource model](/run/docs/resource-model)\nguide.\n\nArchitecture overview\n---------------------\n\nWhen you deploy your function's source code to Cloud Run functions,\nthat source code is stored in a Cloud Storage bucket. Cloud Build then\nautomatically builds your code into a container image and pushes that image to\nan Artifact Registry [image registry](/run/docs/deploy-functions#image-repository).\nCloud Run functions accesses this image when it needs to run the\ncontainer to execute your function.\n\nIn the following diagram, the Cloud Run functions box represents\na function that is deployed in Cloud Run, using either the\nCloud Run Admin API or the Cloud Functions API. Typically, newer functions\nare deployed using the Cloud Run Admin API, and older functions are deployed\nusing the Cloud Functions API.\n**Figure 1.** A user prepares functions source code and deploys it to Cloud Run.\n\nDepending on which API is used when deploying a function, the following occurs:\n\n- If you deployed your function using use the *Cloud Run Admin API*, the\n following occurs:\n\n 1. Your source code is uploaded to a Cloud Storage bucket that has no\n retention period.\n\n 1. If you're using default encryption, the name of the bucket is autogenerated and named `run-sources-`\u003cvar translate=\"no\"\u003ePROJECT_ID\u003c/var\u003e`-`\u003cvar translate=\"no\"\u003eREGION\u003c/var\u003e.\n 2. If you're protecting your data with [Customer-managed encryption keys (CMEK)](/kms/docs/cmek), the bucket name is not autogenerated, and you must provide a bucket name.\n 2. The source code is submitted to Cloud Build, where\n Google Cloud's buildpacks and the Functions Framework create a container\n image. Note that the Cloud Build service account builds the container\n image. Cloud Run defaults to using the\n [`e2-standard-2` machine type](/build/pricing)\n provided by Cloud Build.\n\n 3. Your container image is then uploaded to Artifact Registry through an auto-created\n bucket called \u003cvar translate=\"no\"\u003eREGION\u003c/var\u003e`-docker.pkg.dev/`\u003cvar translate=\"no\"\u003ePROJECT_ID\u003c/var\u003e`/cloud-run-source-deploy`.\n\n 4. The image is deployed to Cloud Run as a service.\n\n 5. You can trigger or invoke the function with Eventarc,\n Pub/Sub, or other HTTP triggers.\n\n- If you deployed your function using use the *Cloud Functions API (v2)*, the\n following occurs:\n\n 1. Your source code is uploaded to a Cloud Storage bucket that has no\n retention period.\n\n The name of the bucket is autogenerated and follows this format:\n 1. If you're using default encryption, this bucket is named `gcf-v2-sources-`\u003cvar translate=\"no\"\u003ePROJECT_NUMBER\u003c/var\u003e`-`\u003cvar translate=\"no\"\u003eREGION\u003c/var\u003e.\n 2. If you're protecting your data with CMEK, the bucket is named `gcf-sources-`\u003cvar translate=\"no\"\u003ePROJECT_NUMBER\u003c/var\u003e`-`\u003cvar translate=\"no\"\u003eREGION\u003c/var\u003e`-`\u003cvar translate=\"no\"\u003eCMEK_KEY_HASH\u003c/var\u003e.\n 2. The source code is submitted to Cloud Build, where\n Google Cloud's buildpacks and the Functions Framework create a container\n image. Note that the Cloud Build service account builds the container\n image. Cloud Run defaults to using the\n [`e2-standard-2` machine type](/build/pricing)\n provided by Cloud Build.\n\n 3. Your container image is then uploaded to Artifact Registry through an auto-created\n bucket called \u003cvar translate=\"no\"\u003eREGION\u003c/var\u003e`-docker.pkg.dev/`\u003cvar translate=\"no\"\u003ePROJECT_ID\u003c/var\u003e`/gcf-artifacts`.\n\n 4. The image is deployed to Cloud Run as a service.\n\n 5. You can trigger or invoke the function with Eventarc,\n Pub/Sub, or other HTTP triggers.\n\nWhat's next\n-----------\n\n- Learn about the [different types of functions](/run/docs/write-functions) and your options for [triggering functions](/run/docs/function-triggers).\n- If you previously created functions with the Cloud Functions API, see the [Cloud Run functions comparison guide](/run/docs/functions/comparison) to learn about the differences between the two versions of Cloud Run functions."]]