Men-deploy layanan dari kode sumber

Halaman ini menjelaskan cara men-deploy layanan atau revisi layanan baru ke Cloud Run langsung dari kode sumber menggunakan satu perintah gcloud CLI, gcloud run deploy dengan tanda --source. Untuk contoh penjelasan tentang men-deploy layanan Halo Dunia, lihat Panduan memulai deployment dari sumber.

Ada dua cara berbeda untuk menggunakan fitur ini:

Perlu diperhatikan bahwa deployment sumber menggunakan Artifact Registry untuk menyimpan container yang dibangun. Jika project Anda belum memiliki repositori Artifact Registry dengan namacloud-run-source-deploy di region yang Anda deploy-kan, fitur ini otomatis membuat repositori Artifact Registry dengan namacloud-run-source-deploy.

Jika Dockerfile ada dalam direktori kode sumber, kode sumber yang diupload dibuat menggunakan Dockerfile tersebut. Jika tidak ada Dockerfile dalam direktori kode sumber, buildpack Google Cloud akan otomatis mendeteksi bahasa yang Anda gunakan dan mengambil dependensi kode untuk membuat image container yang siap produksi menggunakan basis yang aman yang dikelola oleh Google.

Secara default, perbaikan keamanan hanya diterapkan saat layanan Cloud Run di-deploy. Saat Anda mengaktifkan update keamanan otomatis untuk layanan, layanan tersebut akan menerima patch secara otomatis tanpa waktu henti. Pelajari lebih lanjut cara mengonfigurasi update keamanan.

Sebelum memulai

  • Pastikan Anda telah menyiapkan project baru untuk Cloud Run seperti yang dijelaskan di halaman setup.
  • Jika Anda dikenai kebijakan organisasi pembatasan domain yang membatasi pemanggilan yang tidak diautentikasi untuk project, Anda perlu mengakses layanan yang di-deploy seperti yang dijelaskan di bagian Menguji layanan pribadi.

  • Enable the Cloud Run Admin API.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

    Setelah Cloud Run Admin API diaktifkan, akun layanan default Compute Engine akan dibuat secara otomatis.

Peran yang diperlukan

Untuk men-deploy dari sumber, Anda atau administrator Anda harus memberikan peran IAM berikut kepada akun deployer.

Klik untuk melihat peran yang diperlukan untuk akun deployer

Untuk mendapatkan izin yang Anda perlukan untuk membangun dan men-deploy dari sumber, minta administrator untuk memberi Anda peran IAM berikut:

Untuk mengetahui daftar peran dan izin IAM yang terkait dengan Cloud Run, lihat Peran IAM Cloud Run dan Izin IAM Cloud Run. Jika layanan Cloud Run Anda berinteraksi dengan Google Cloud API, seperti Library Klien Cloud, lihat panduan konfigurasi identitas layanan. Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat izin deployment dan mengelola akses.

Bahasa yang didukung

Selain sumber dengan Dockerfile, men-deploy dari sumber juga mendukung bahasa berikut menggunakan buildpack Google Cloud:

Runtime Deployment sumber Konfigurasi buildpack
Go Men-deploy layanan Go Mengonfigurasi buildpack Go
Node.js Men-deploy layanan Node.js Mengonfigurasi buildpack Node.js
Python Men-deploy layanan Python Mengonfigurasi buildpack Python
Java
(termasuk Kotlin, Groovy, Scala)
Men-deploy layanan Java Mengonfigurasi buildpack Java
.NET Men-deploy layanan .NET Mengonfigurasi buildpack .NET
Ruby Men-deploy layanan Ruby Mengonfigurasi buildpack Ruby
PHP Men-deploy layanan PHP Mengonfigurasi buildpack PHP

Baca detail selengkapnya tentang versi bahasa yang didukung.

Men-deploy dari sumber dengan build

Bagian ini menjelaskan cara menggunakan buildpack Google Cloud dan Cloud Build untuk mem-build image container secara otomatis dari kode sumber Anda tanpa harus menginstal Docker di komputer atau menyiapkan buildpack atau Cloud Build.

Batasan

  • Men-deploy dari sumber menggunakan Artifact Registry dan Cloud Build, sehingga fitur ini hanya tersedia di region yang didukung oleh Artifact Registry dan Cloud Build.
  • Men-deploy dari sumber adalah fitur yang praktis, dan tidak memungkinkan penyesuaian build secara penuh. Untuk kontrol lebih besar, bangun image container menggunakan Cloud Build, misalnya, menggunakan gcloud builds submit, lalu deploy image container menggunakan, misalnya, gcloud run deploy --image.
  • Men-deploy dari sumber dengan buildpack Google Cloud menetapkan Tanggal Terakhir Diubah file sumber ke 1 Januari 1980. Ini adalah perilaku default buildpack dan dirancang untuk mendukung build yang dapat direproduksi. Bergantung pada framework bahasa Anda, hal ini dapat memengaruhi caching file statis di sisi browser. JIka aplikasi Anda terpengaruh oleh hal ini, Google merekomendasikan untuk menonaktifkan header HTTP etag dan Last-Modified di aplikasi Anda.
  • Men-deploy dari sumber dengan buildpack Google Cloud selalu menggunakan gcr.io/buildpacks/builder:latest. Jika bahasa atau konfigurasi OS pilihan Anda tidak tersedia di latest, gunakan builder khusus untuk membuat image aplikasi menggunakan builder pilihan Anda.
  • Anda dapat men-deploy layanan dari sumber menggunakan Kotlin dan bahasa JVM lainnya seperti Java. Bahasa yang Anda gunakan harus sesuai dengan aturan berikut:

    • Anda dapat mem-build aplikasi menggunakan Maven atau Gradle.
    • File build berisi semua plugin yang diperlukan untuk menghasilkan class.

Sebelum Anda men-deploy dengan build

Sebelum Anda men-deploy dari sumber dengan build:

  • Ikuti langkah-langkah di Sebelum memulai.

  • Enable the Cloud Build API.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

Peran yang diperlukan

Untuk men-deploy dari sumber dengan build, Anda atau administrator Anda harus memberikan peran IAM berikut kepada akun layanan Cloud Build.

Klik untuk melihat peran yang diperlukan untuk akun layanan Cloud Build

Cloud Build secara otomatis menggunakan akun layanan default Compute Engine sebagai akun layanan Cloud Build default untuk membangun kode sumber dan resource Cloud Run Anda, kecuali jika Anda mengganti perilaku ini. Agar Cloud Build dapat membangun sumber Anda, minta administrator Anda untuk memberikan peran Cloud Run Builder (roles/run.builder) ke akun layanan default Compute Engine di project Anda:

  gcloud projects add-iam-policy-binding PROJECT_ID \
      --member=serviceAccount:PROJECT_NUMBER-compute@developer.gserviceaccount.com \
      --role=roles/run.builder
  

Ganti PROJECT_NUMBER dengan nomor project Google Cloud Anda, dan PROJECT_ID dengan ID project Google Cloud Anda. Untuk mengetahui petunjuk mendetail tentang cara menemukan project ID dan nomor project Anda, lihat Membuat dan mengelola project.

Pemberian peran builder Cloud Run ke akun layanan default Compute Engine memerlukan waktu beberapa menit untuk berlaku.

Untuk mengetahui daftar peran dan izin IAM yang terkait dengan Cloud Run, lihat Peran IAM Cloud Run dan Izin IAM Cloud Run. Jika layanan Cloud Run Anda berinteraksi dengan Google Cloud API, seperti Library Klien Cloud, lihat panduan konfigurasi identitas layanan. Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat izin deployment dan mengelola akses.

Men-deploy dengan build

Untuk men-deploy dari kode sumber, klik tab untuk mendapatkan petunjuk cara menggunakan alat pilihan Anda.

gcloud

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

  2. Mengubah ke direktori sumber. Direktori sumber menggunakan Dockerfile jika ada, meskipun tidak diperlukan.

  3. Bangun dan deploy layanan Anda:

    gcloud run deploy SERVICE --source .

    Ganti SERVICE dengan nama yang Anda inginkan untuk layanan Anda.

  4. Merespon setiap permintaan untuk menginstal API yang diperlukan dengan merespons y ketika diminta. Anda hanya perlu melakukan ini sekali untuk sebuah project. Merespons permintaan lainnya dengan menyediakan platform dan region, jika Anda belum menetapkan setelan default untuk permintaan tersebut seperti yang dijelaskan di halaman penyiapan.

  5. Tunggu hingga proses build dan deploy selesai. Setelah selesai, Cloud Run akan menampilkan pesan berhasil.

  6. Setelah deployment, revisi layanan ini melayani 100% traffic.

    Cloud Code

    Untuk men-deploy dari sumber menggunakan Cloud Code, baca panduan IntelliJ dan Visual Studio Code.

    Gemini CLI

    Gunakan perintah /deploy di alat Gemini CLI untuk men-deploy layanan Cloud Run dari kode sumber.

    Untuk menggunakan Gemini CLI dengan ekstensi Cloud Run, ikuti langkah-langkah berikut:

    1. Instal Gemini CLI versi terbaru di salah satu lingkungan pengembangan berikut:

      • Terminal
      • Cloud Shell
      • VS Code menggunakan mode agen Gemini Code Assist (lihat tab "VS Code")
    2. Instal ekstensi Cloud Run:

      gemini extensions install https://github.com/GoogleCloudPlatform/cloud-run-mcp
    3. Login ke Google Cloud CLI:

      gcloud auth login
    4. Menyiapkan Kredensial Default Aplikasi:

      gcloud auth application-default login
    5. Ubah ke direktori kode sumber Anda.

    6. Luncurkan Gemini CLI:

      gemini
    7. Bangun dan deploy layanan Anda:

      /deploy
      • Jika Anda diminta untuk memberikan project Google Cloud , masukkan nama project Anda.
      • Jika Anda diminta untuk memilih alat, pilih deploy_local_folder.
    8. Tunggu hingga proses build dan deploy selesai. Setelah selesai, Cloud Run akan menampilkan pesan berhasil.

    MCP

    Untuk men-deploy layanan Cloud Run dari kode sumber dari klien Model Context Protocol (MCP), instal server Model Context Protocol (MCP) Cloud Run.

    Petunjuk penginstalan bervariasi bergantung pada klien MCP. Biasanya, Anda perlu menambahkan baris berikut ke file JSON setelan:

    "mcpServers":{
      "cloud-run": {
        "command": "npx",
        "args": ["-y", "@google-cloud/cloud-run-mcp"]
      }
    }

    Tulis

    Anda dapat menyimpan Spesifikasi Compose dalam file YAML, lalu men-deploy-nya dari kode sumber sebagai layanan Cloud Run menggunakan satu perintah gcloud.

    1. Mengubah ke direktori sumber. Direktori sumber menggunakan Dockerfile jika ada, meskipun tidak diperlukan.

    2. Di direktori project Anda, buat file compose.yaml dengan definisi layanan Anda.

      services:
        web:
          build: .
          ports:
            - "8080:8080"

      Anda juga dapat menentukan opsi konfigurasi lainnya seperti variabel lingkungan, secret, dan pemasangan volume.

    3. Untuk men-deploy layanan, jalankan perintah gcloud beta run compose up:

      gcloud beta run compose up compose.yaml
    4. Respons y untuk setiap perintah guna menginstal komponen yang diperlukan atau mengaktifkan API.

    5. Opsional: Tampilkan layanan Anda ke publik jika ingin mengizinkan akses tanpa autentikasi ke layanan.

    Setelah deployment, URL layanan Cloud Run akan ditampilkan. Salin URL ini dan tempelkan ke browser Anda untuk melihat penampung yang sedang berjalan. Anda dapat menonaktifkan autentikasi default dari konsol Google Cloud .

Men-deploy dari sumber tanpa build

Anda dapat men-deploy artefak sumber langsung ke Cloud Run, dengan melewati langkah Cloud Build. Cara kerjanya adalah, alih-alih membuat image container dari sumber, Anda dapat mengupload arsip aplikasi yang telah dipaketkan sebelumnya langsung ke bucket Cloud Storage. Cloud Run kemudian mengambil arsip ini dan menjalankannya langsung di image dasar. Pendekatan ini menghasilkan waktu deployment yang jauh lebih cepat.

Batasan

Deploy ke sumber tanpa build hanya mendukung hal berikut:

  • Layanan Cloud Run.
  • Runtime yang didukung (tidak ada dukungan Dockerfile).
  • Arsip sumber (.tar.gz) <= 250 MiB.
  • Biner (misalnya, biner go) atau skrip (misalnya, skrip python) harus kompatibel dengan arsitektur x86.
  • Sumber harus mandiri, dengan semua dependensi yang dipaketkan. Image dasar runtime hanya berisi sistem operasi minimum dan beberapa library bahasa.

Sebelum Anda men-deploy tanpa build

Untuk menggunakan fitur "deploy tanpa build":

  • Pastikan Anda telah mengikuti langkah-langkah di Sebelum memulai.
  • Aktifkan Cloud Run dan Cloud Storage API:

    gcloud services enable run.googleapis.com \
      storage.googleapis.com
    
  • Anda harus menginstal dependensi aplikasi secara lokal sebelum men-deploy, karena dependensi tersebut tidak akan diinstal (tidak ada build).

Men-deploy tanpa build

Bagian ini menjelaskan cara men-deploy artefak Anda langsung ke Cloud Run tanpa menggunakan build.

gcloud

Untuk men-deploy direktori sumber lokal, gunakan flag --no-build untuk memberi tahu perintah deploy agar melewati langkah Cloud Build:

gcloud beta run deploy SERVICE_NAME \
  --source APPLICATION_PATH \
  --no-build \
  --base-image=BASE_IMAGE \
  --command=COMMAND \
  --args=ARG

Ganti kode berikut:

  • SERVICE_NAME: nama layanan Cloud Run Anda.
  • APPLICATION_PATH: lokasi aplikasi Anda di sistem file lokal.
  • BASE_IMAGE: image dasar runtime yang ingin Anda gunakan untuk aplikasi Anda. Contohnya, us-central1-docker.pkg.dev/serverless-runtimes/google-24-full/runtimes/nodejs24.
  • COMMAND: perintah yang digunakan untuk memulai container.
  • ARG: argumen yang Anda kirim ke perintah container. Jika Anda menggunakan beberapa argumen, tentukan setiap argumen di barisnya masing-masing.

YAML

Anda dapat menyimpan spesifikasi layanan dalam file YAML, lalu men-deploy-nya menggunakan gcloud CLI atau editor Google Cloud konsol service.yaml.

  1. Buat bucket penyimpanan untuk menyimpan aplikasi Anda:

    gcloud storage buckets create gs://BUCKET_NAME --location=BUCKET_LOCATION
    

    Ganti kode berikut:

    • BUCKET_NAME: nama yang ingin Anda berikan untuk bucket, tunduk pada persyaratan penamaan. Misalnya, my-bucket.
    • BUCKET_LOCATION: lokasi bucket Anda. Misalnya, US.
  2. Buat arsip dengan sumber aplikasi Anda menggunakan zip atau tar, misalnya:

    tar -cvzf ARCHIVE_NAME APPLICATION_PATH
    

    Ganti kode berikut:

    • ARCHIVE_NAME: nama arsip yang akan dibuat. Contoh, app.tar.gz.
    • APPLICATION_PATH: lokasi aplikasi Anda di sistem file lokal. Contoh, ~/my-application. Untuk mengarsipkan direktori kerja saat ini, tetapkan nilai ini ke *.
  3. Upload arsip aplikasi Anda ke Cloud Storage:

    gcloud storage cp ARCHIVE_NAME gs://BUCKET_NAME
    

    Ganti kode berikut:

    • ARCHIVE_NAME: jalur lokal ke arsip yang Anda buat sebelumnya. Contoh, app.tar.gz.
    • BUCKET_NAME: nama bucket yang Anda buat sebelumnya. Contoh, my-bucket.
  4. Buat file baru service.yaml dengan konten berikut:

    apiVersion: serving.knative.dev/v2
    kind: Service
    metadata:
     name: SERVICE_NAME
    spec:
     template:
       metadata:
         annotations:
           run.googleapis.com/sources: '{"": "gs://BUCKET_NAME/ARCHIVE_NAME"}'
           run.googleapis.com/base-images: '{"": "BASE_IMAGE"}'
       spec:
         containers:
         - image: scratch
           command:
           - COMMAND
           args:
           - ARG1
           - ARG-N
         runtimeClassName: run.googleapis.com/linux-base-image-update
    

    Ganti kode berikut:

    • SERVICE_NAME: nama layanan Cloud Run Anda. Nama layanan harus terdiri dari 49 karakter atau kurang dan harus unik per region dan project.
    • BUCKET_NAME: nama bucket yang Anda buat sebelumnya. Contoh, my-bucket.
    • ARCHIVE_NAME: jalur lokal ke arsip yang Anda buat sebelumnya. Contohnya, app.tar.gz.
    • BASE_IMAGE: image dasar runtime yang ingin Anda gunakan untuk aplikasi Anda. Contoh, us-central1-docker.pkg.dev/serverless-runtimes/google-24-full/runtimes/nodejs24.
    • COMMAND: perintah yang akan digunakan container untuk memulai.
    • ARG1: argumen yang Anda kirim ke perintah container. Jika Anda menggunakan beberapa argumen, tentukan setiap argumen di barisnya masing-masing, contohnya, seperti yang ditunjukkan, ARG-N.
  5. Deploy layanan baru:

    gcloud run services replace service.yaml
    

REST API

REST API:

curl -H "Content-Type: application/json" \
-H "Authorization: Bearer ACCESS_TOKEN" \
-X POST \
-d '{"template": {"containers": [{"command": ["npm"], "args": ["start"], "image": "scratch", "baseImageUri": "google-22/nodejs22", "sourceCode": {"cloudStorageSource": {"bucket": "'GCS_BUCKET_NAME", "object":"ARCHIVE"}}}]}}' \
https://run.googleapis.com/v2/projects/PROJECT_ID/locations/REGION/services?serviceId=SERVICE_NAME

Contoh men-deploy dari sumber tanpa build

Bagian ini menunjukkan contoh cara men-deploy dari sumber tanpa menggunakan build.

Node.js

Buat layanan Node.js:

  1. Buat sebuah direktori baru bernama helloworld dan ubah ke direktori tersebut:

    mkdir helloworld
    cd helloworld
    
  2. Buat file package.json dengan konten berikut:

    {
      "name": "helloworld",
      "description": "Simple hello world sample in Node",
      "version": "1.0.0",
      "private": true,
      "main": "index.js",
      "type": "module",
      "scripts": {
        "start": "node index.js"
      },
      "engines": {
        "node": ">=16.0.0"
      },
      "author": "Google LLC",
      "license": "Apache-2.0",
      "dependencies": {
        "express": "^4.17.1"
      }
    }
    
  3. Di direktori yang sama, buat file index.js, lalu salin baris berikut ke dalamnya:

    import express from 'express';
    const app = express();
    
    app.get('/', (req, res) => {
      const name = process.env.NAME || 'World';
      res.send(`Hello ${name}!`);
    });
    
    const port = parseInt(process.env.PORT) || 8080;
    app.listen(port, () => {
      console.log(`helloworld: listening on port ${port}`);
    });

    Kode ini menghasilkan server web dasar yang memantau port yang ditentukan oleh PORT variabel lingkungan .

  4. Di direktori helloworld, jalankan perintah berikut untuk menginstal dependensi layanan secara lokal:

    npm install
  5. Di direktori helloworld, deploy layanan menggunakan flag --no-build, yang memberi tahu perintah deploy untuk melewati langkah Cloud Build:

    gcloud beta run deploy helloworld \
     --source . \
     --region=REGION \
     --no-build \
     --base-image=nodejs24 \
     --command=node \
     --args=index.js
     

    Ganti kode berikut:

    • REGION: region tempat layanan Anda di-deploy.

Python

Buat layanan Python:

  1. Buat sebuah direktori baru bernama helloworld dan ubah ke direktori tersebut:

    mkdir helloworld
    cd helloworld
    
  2. Buat file bernama main.py lalu tempelkan kode berikut ke dalamnya:

    import os
    
    from flask import Flask
    
    app = Flask(__name__)
    
    
    @app.route("/")
    def hello_world():
        """Example Hello World route."""
        name = os.environ.get("NAME", "World")
        return f"Hello {name}!"
    
    
    if __name__ == "__main__":
        app.run(debug=True, host="0.0.0.0", port=int(os.environ.get("PORT", 8080)))

    Kode ini merespons permintaan dengan sapaan "Hello World". Penanganan HTTP dilakukan oleh server web Gunicorn di container. Saat langsung dipanggil untuk penggunaan lokal, kode ini menghasilkan server web dasar yang ditentukan oleh PORTvariabel lingkungan port.

  3. Buat file bernama requirements.txt lalu tempelkan kode berikut ke dalamnya:

    Flask==3.0.3
    gunicorn==23.0.0
    Werkzeug==3.0.3
    

    Kode ini akan menambahkan paket yang dibutuhkan oleh contoh.

  4. Vendor dependensi:

    pip3 install -r requirements.txt --target=./vendor
    
  5. Deploy layanan menggunakan gcloud CLI. Flag --no-build memberi tahu perintah deploy untuk melewati langkah Cloud Build:

    gcloud beta run deploy helloworld \
      --source . \
      --region=REGION \
      --no-build \
      --base-image=python313 \
      --command=python \
      --args=main.py \
      --set-env-vars PYTHONPATH=./vendor
    

Ganti REGION dengan region tempat layanan Anda di-deploy.

Pemecahan masalah

Bagian ini memberikan beberapa tips tentang cara memecahkan masalah deployment dari sumber tanpa menggunakan build.

Pengembangan lokal

Men-deploy dari sumber tanpa menggunakan build berfungsi serupa dengan memasang kode atau dapat dieksekusi ke image dasar.

Contoh:

  1. Buat salinan semua konten:

    cp -R python/hello-world/ workspace
  2. Jalankan image dasar sebagai pengguna root dengan sumber yang di-mount. Anda dapat secara opsional menyertakan -p 8080:8080 jika Anda perlu melakukan curl dari komputer host.

    docker run -it -v "LOCAL_PATH" -u 0 us-central1-docker.pkg.dev/serverless-runtimes/google-22-full/runtimes/python313 /bin/bash`

    Ganti LOCAL_PATH dengan lokasi file sumber lokal Anda.

  3. Jalankan server:

    python main.py

Log eksekusi

Log eksekusi berguna untuk men-debug kegagalan deployment. Di Google Cloud konsol, buka Observability > Logs.

Akses Cloud Storage ditolak

Jika layanan Cloud Run Anda mengalami error "Permission denied" saat mencoba mengakses objek Cloud Storage, Anda harus memberikan peran roles/storage.objectViewer ke akun layanan Cloud Run Anda:

gcloud projects add-iam-policy-binding PROJECT \
  --member="SERVICE_ACCOUNT" \
  --role="roles/storage.objectViewer"

Ganti kode berikut:

  • PROJECT: Google Cloud Project ID Anda.
  • SERVICE_ACCOUNT: akun layanan Cloud Run Anda. Contoh, service-123@serverless-robot-staging.iam.gserviceaccount.com.

Mengotomatisasi proses membangun dari sumber

Sebagai praktik terbaik untuk menghindari perubahan tanpa versi di sumber lokal, Google menyarankan agar Anda men-deploy secara otomatis saat perubahan dikirim ke repositori Git Anda. Untuk mempermudah, Anda dapat menghubungkan dan mengkonfigurasi deployment berkelanjutan ke layanan Cloud Run Anda. Dengan menghubungkan repositori GitHub Anda ke Cloud Run, Anda dapat mengonfigurasi build dan men-deploy repositori Anda tanpa perlu menulis Dockerfile atau file build.

Untuk mengonfigurasi build otomatis, siapkan otomatisasi seperti yang dijelaskan di halaman continuous build, pastikan Anda memilih opsi untuk mem-build sumber dengan buildpack.

Langkah berikutnya

Setelah men-deploy layanan Cloud Run, Anda dapat melakukan hal berikut:

Pelajari konfigurasi deployment sumber:

Anda dapat mengotomatiskan build dan deployment layanan Cloud Run menggunakan pemicu Cloud Build: