Membuat tugas

Halaman ini menjelaskan cara membuat dan memperbarui tugas Cloud Run dari image container yang ada. Tidak seperti layanan Cloud Run yang memproses dan menyalurkan permintaan, tugas Cloud Run hanya menjalankan tugasnya dan keluar setelah selesai. Tugas tidak memproses atau melayani permintaan.

Setelah Anda membuat atau memperbarui tugas, Anda dapat:

Anda dapat menyusun tugas sebagai satu tugas atau sebagai beberapa tugas independen (hingga 10,000 tugas) yang dapat dijalankan secara paralel. Setiap tugas menjalankan satu instance container dan dapat dikonfigurasi untuk mencoba lagi jika terjadi kegagalan. Setiap tugas memahami indeksnya, yang disimpan di variabel lingkungan CLOUD_RUN_TASK_INDEX. Jumlah keseluruhan tugas disimpan dalam variabel lingkungan CLOUD_RUN_TASK_COUNT. Jika Anda memproses data secara paralel, kode Anda bertanggung jawab untuk menentukan tugas mana yang menangani subset data.

Anda dapat menetapkan waktu tunggu pada tugas dan menentukan jumlah percobaan ulang jika terjadi kegagalan tugas. Jika tugas apa pun melebihi jumlah percobaan ulang maksimumnya, tugas tersebut akan ditandai sebagai gagal. Jika ada tugas yang gagal, eksekusi tugas akan ditandai sebagai gagal setelah Cloud Run mencoba semua tugas.

Secara default, setiap tugas berjalan selama maksimum 10 menit. Anda dapat mengubah nilai default dengan mengubah setelan waktu tunggu tugas, maksimal 168 jam (7 hari). Dukungan untuk waktu tunggu lebih dari 24 jam tersedia di Pratinjau.

Tidak ada waktu tunggu eksplisit untuk eksekusi tugas: setelah semua tugas selesai, eksekusi tugas akan selesai.

Tugas menggunakan lingkungan eksekusi generasi kedua.

Peran yang diperlukan

Untuk mendapatkan izin yang Anda perlukan guna membuat tugas Cloud Run, minta administrator Anda 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 tugas 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.

Image dan registry container yang didukung

Anda dapat langsung menggunakan image container yang disimpan di Artifact Registry, atau Docker Hub. Google merekomendasikan penggunaan Artifact Registry.

Anda dapat menggunakan image container dari registry publik atau pribadi lainnya (seperti JFrog Artifactory, Nexus, atau GitHub Container Registry), dengan menyiapkan repositori jarak jauh Artifact Registry.

Sebaiknya hanya pertimbangkan Docker Hub untuk men-deploy image container populer seperti Gambar Resmi Docker atau image OSS Bersponsor Docker. Untuk ketersediaan yang lebih tinggi, Google merekomendasikan untuk men-deploy image Docker Hub ini melalui repositori jarak jauh Artifact Registry.

Cloud Run tidak mendukung lapisan image container yang lebih besar dari 9,9 GB saat men-deploy dari Docker Hub atau repositori jarak jauh Artifact Registry dengan registry eksternal.

Membuat tugas baru

Anda dapat membuat tugas baru menggunakan Google Cloud Console, Google Cloud CLI, YAML, atau Terraform.

Konsol

Untuk membuat pekerjaan baru:

  1. Di konsol Google Cloud, buka halaman Cloud Run:

    Buka Cloud Run

  2. Klik Deploy container dan pilih Job untuk menampilkan formulir Create job.

    1. Di bagian formulir, tentukan image container yang berisi kode tugas atau pilih dari daftar container yang sebelumnya di-deploy.
    2. Nama tugas dibuat secara otomatis dari image container. Anda dapat mengedit atau mengubah nama pekerjaan sesuai kebutuhan. Nama pekerjaan tidak dapat diubah setelah tugas dibuat.
    3. Pilih wilayah tempat Anda ingin tugas berada. Pemilih region menandai wilayah yang memiliki dampak karbon terendah.
    4. Tentukan jumlah tugas yang ingin Anda jalankan dalam tugas. Semua tugas harus berhasil agar pekerjaan berhasil. Secara default, tugas dijalankan secara paralel.
  3. Klik Container, volume, jaringan, keamanan untuk menetapkan properti tugas tambahan.

    • Di bagian Kapasitas tugas:
    1. Di menu Memory, tentukan jumlah memori yang diperlukan. Setelan defaultnya adalah ukuran minimum yang diperlukan, 512 MiB.
    2. Di menu CPU, tentukan jumlah CPU yang diperlukan. Defaultnya adalah jumlah minimum yang diperlukan, 1 CPU.
    3. Di bagian Waktu tunggu tugas, tentukan jumlah waktu maksimum dalam detik untuk menjalankan tugas, hingga 168 jam (7 hari). Dukungan untuk waktu tunggu lebih dari 24 jam tersedia di Pratinjau. Setiap tugas harus selesai dalam jangka waktu ini. Defaultnya adalah 10 menit (600 detik).

    4. Di bagian Jumlah percobaan ulang per tugas yang gagal, tentukan jumlah percobaan ulang jika terjadi kegagalan tugas. Defaultnya adalah 3 percobaan ulang.

    • Di bawah Paralelisme:

      1. Dalam sebagian besar kasus, Anda dapat memilih Jalankan sebanyak mungkin tugas secara serentak.
      2. Jika Anda perlu menetapkan batas yang lebih rendah karena batasan penskalaan pada resource yang diakses tugas Anda, pilih Batasi jumlah maksimum tugas serentak dan tentukan jumlah tugas serentak di kolom Batas paralelisme kustom.
  4. Secara opsional, konfigurasikan setelan lainnya di tab yang sesuai:

  5. Setelah selesai mengonfigurasi tugas, klik Create untuk membuat tugas di Cloud Run.

  6. Untuk menjalankan tugas, lihat menjalankan tugas atau menjalankan tugas sesuai jadwal.

gcloud

Untuk menggunakan command line, Anda harus sudah menyiapkan gcloud CLI.

Untuk membuat pekerjaan baru:

  1. Jalankan perintah:

    gcloud run jobs create JOB_NAME --image IMAGE_URL OPTIONS
    Atau, gunakan perintah deploy:
    gcloud run jobs deploy JOB_NAME --image IMAGE_URL OPTIONS

    • Ganti JOB_NAME dengan nama pekerjaan yang ingin Anda buat. Jika Anda menghilangkan parameter ini, Anda akan diminta untuk memasukkan nama tugas saat menjalankan perintah.
    • Ganti IMAGE_URL dengan referensi ke image container, contohnya, us-docker.pkg.dev/cloudrun/container/job:latest.
    • Secara opsional, ganti OPTIONS dengan salah satu opsi berikut:

      Opsi Deskripsi
      --tasks Menerima bilangan bulat yang lebih besar atau sama dengan 1. Default-nya adalah 1; maksimum adalah 10,000. Setiap tugas diberi variabel lingkungan CLOUD_RUN_TASK_INDEX dengan nilai antara 0 dan jumlah tugas minus 1, beserta CLOUD_RUN_TASK_COUNT, yang merupakan jumlah tugas
      --max-retries Frekuensi tugas yang gagal dicoba lagi. Setelah tugas gagal melebihi batas ini, seluruh tugas akan ditandai sebagai gagal. Misalnya, jika disetel ke 1, tugas yang gagal akan dicoba lagi sekali, dengan total dua kali. Nilai defaultnya adalah 3. Menerima bilangan bulat dari 0 hingga 10.
      --task-timeout Menerima durasi seperti "2 dtk". Default-nya adalah 10 menit; maksimum 168 jam (7 hari). Dukungan untuk waktu tunggu lebih dari 24 jam tersedia di Pratinjau.
      --parallelism Jumlah tugas maksimum yang dapat dijalankan secara paralel. Secara default, tugas akan dimulai secepat mungkin secara paralel. Lihat Paralelisme untuk rentang nilai.
      --execute-now Jika ditetapkan, segera setelah tugas dibuat, eksekusi tugas akan dimulai. Setara dengan memanggil gcloud run jobs create yang diikuti dengan gcloud run jobs execute.

      Selain opsi di atas, Anda juga menentukan konfigurasi lain seperti variabel lingkungan atau batas memori.

      Untuk daftar lengkap opsi yang tersedia saat membuat tugas, lihat dokumentasi command line buat tugas gcloud run.

  2. Tunggu hingga pembuatan tugas selesai dibuat. Anda akan melihat pesan berhasil setelah berhasil diselesaikan.

  3. Untuk menjalankan tugas, lihat menjalankan tugas atau menjalankan tugas sesuai jadwal.

YAML

Anda dapat menyimpan spesifikasi tugas dalam file YAML, lalu men-deploy-nya menggunakan gcloud CLI.

  1. Buat file job.yaml baru dengan konten ini:

    apiVersion: run.googleapis.com/v1
    kind: Job
    metadata:
      name: JOB
    spec:
      template:
        spec:
          template:
            spec:
              containers:
              - image: IMAGE

    Ganti

    • JOB dengan nama tugas Cloud Run Anda. Nama tugas harus berisi maksimal 49 karakter dan harus unik per region dan project.
    • IMAGE dengan URL image container lowongan.

    Anda juga dapat menentukan konfigurasi lainnya, seperti variabel lingkungan atau batas memori.

  2. Deploy tugas baru menggunakan perintah berikut:

    gcloud run jobs replace job.yaml

Terraform

Untuk mempelajari cara menerapkan atau menghapus konfigurasi Terraform, lihat Perintah dasar Terraform.

Untuk membuat tugas Cloud Run baru, gunakan resource google_cloud_run_v2_job dan ubah file main.tf Anda seperti yang ditunjukkan dalam cuplikan berikut.

resource "google_cloud_run_v2_job" "default" {
  name     = "cloud-run-job"
  location = "us-central1"

  deletion_protection = false # set to "true" in production

  template {
    template {
      containers {
        image = "us-docker.pkg.dev/cloudrun/container/job:latest"
      }
    }
  }
}

Library klien

Untuk membuat tugas dari kode:

REST API

Untuk membuat tugas, kirim permintaan HTTP POST ke endpoint jobs Cloud Run Admin API.

Misalnya, menggunakan curl:

curl -H "Content-Type: application/json" \
  -H "Authorization: Bearer ACCESS_TOKEN" \
  -X POST \
  -d '{template: {template: {containers: [{image: "IMAGE_URL"}]}}}' \
  https://run.googleapis.com/v2/projects/PROJECT_ID/locations/REGION/jobs?jobId=JOB_NAME

Ganti:

  • ACCESS_TOKEN dengan token akses yang valid untuk akun yang memiliki izin IAM untuk membuat tugas. Misalnya, jika login ke gcloud, Anda dapat mengambil token akses menggunakan gcloud auth print-access-token. Dari dalam instance container Cloud Run, Anda dapat mengambil token akses menggunakan server metadata instance container.
  • JOB_NAME dengan nama tugas yang ingin Anda buat.
  • IMAGE_URL dengan URL image container tugas, misalnya, us-docker.pkg.dev/cloudrun/container/job:latest.
  • REGION dengan Google Cloud region tugas.
  • PROJECT_ID dengan Google Cloud project ID.

Lokasi Cloud Run

Cloud Run bersifat regional, berarti infrastruktur yang menjalankan layanan Cloud Run Anda terletak di region tertentu dan dikelola oleh Google agar tersedia secara redundan di semua zona dalam region tersebut.

Memenuhi persyaratan latensi, ketersediaan, atau ketahanan adalah faktor utama untuk memilih region tempat layanan Cloud Run dijalankan. Pada umumnya, Anda dapat memilih region yang paling dekat dengan pengguna Anda, tetapi Anda harus mempertimbangkan lokasi produk Google Cloud lain yang digunakan oleh layanan Cloud Run Anda. Menggunakan Google Cloud produk secara bersamaan di beberapa lokasi dapat memengaruhi latensi serta biaya layanan Anda.

Cloud Run tersedia di region berikut:

Tergantung harga Tingkat 1

  • asia-east1 (Taiwan)
  • asia-northeast1 (Tokyo)
  • asia-northeast2 (Osaka)
  • asia-south1 (Mumbai, India)
  • europe-north1 (Finlandia) ikon daun CO2 Rendah
  • europe-southwest1 (Madrid) ikon daun CO2 Rendah
  • europe-west1 (Belgia) ikon daun CO2 Rendah
  • europe-west4 (Belanda) ikon daun CO2 Rendah
  • europe-west8 (Milan)
  • europe-west9 (Paris) ikon daun CO2 Rendah
  • me-west1 (Tel Aviv)
  • us-central1 (Iowa) ikon daun CO2 Rendah
  • us-east1 (South Carolina)
  • us-east4 (North Virginia)
  • us-east5 (Columbus)
  • us-south1 (Dallas) ikon daun CO2 Rendah
  • us-west1 (Oregon) ikon daun CO2 Rendah

Tergantung harga Tingkat 2

  • africa-south1 (Johannesburg)
  • asia-east2 (Hong Kong)
  • asia-northeast3 (Seoul, Korea Selatan)
  • asia-southeast1 (Singapura)
  • asia-southeast2 (Jakarta)
  • asia-south2 (Delhi, India)
  • australia-southeast1 (Sydney)
  • australia-southeast2 (Melbourne)
  • europe-central2 (Warsaw, Polandia)
  • europe-west10 (Berlin) ikon daun CO2 Rendah
  • europe-west12 (Turin)
  • europe-west2 (London, Inggris Raya) ikon daun CO2 Rendah
  • europe-west3 (Frankfurt, Jerman) ikon daun CO2 Rendah
  • europe-west6 (Zurich, Swiss) ikon daun CO2 Rendah
  • me-central1 (Doha)
  • me-central2 (Dammam)
  • northamerica-northeast1 (Montreal) ikon daun CO2 Rendah
  • northamerica-northeast2 (Toronto) ikon daun CO2 Rendah
  • southamerica-east1 (Sao Paulo, Brasil) ikon daun CO2 Rendah
  • southamerica-west1 (Santiago, Cile) ikon daun CO2 Rendah
  • us-west2 (Los Angeles)
  • us-west3 (Salt Lake City)
  • us-west4 (Las Vegas)

Jika sudah membuat layanan Cloud Run, Anda dapat melihat region di dasbor Cloud Run di Konsol Google Cloud.

Saat Anda membuat tugas baru, agen layanan Cloud Run harus dapat mengakses container, yang merupakan kasus default.

Memperbarui tugas yang ada

Jika setelan konfigurasi diubah, Anda harus memperbarui tugas, meskipun tidak ada perubahan pada image container. Perlu diperhatikan bahwa untuk setelan yang tidak diubah, setelan sebelumnya akan terus digunakan.

Anda dapat memperbarui tugas yang ada menggunakan Google Cloud Console, Google Cloud CLI, YAML, atau Terraform.

Konsol

Untuk memperbarui pekerjaan yang sudah ada:

  1. Di konsol Google Cloud, buka halaman Cloud Run:

    Buka Cloud Run

  2. Klik tab Tugas untuk menampilkan daftar tugas.

  3. Klik tugas untuk menampilkan halaman Detail tugas.

  4. Klik Edit.

  5. Jika Anda membuat perubahan pada kode tugas, tentukan image digest container baru.

  6. Secara opsional, ubah jumlah tugas yang ada dalam tugas jika diperlukan.

  7. Secara opsional, klik Container, volumes, networking, security untuk memperbarui properti tugas tambahan:

    • Di bagian Kapasitas tugas:
    1. Di menu Memory, tentukan jumlah memori yang diperlukan. Setelan defaultnya adalah ukuran minimum yang diperlukan, 512 MiB.
    2. Di menu CPU, tentukan jumlah CPU yang diperlukan. Defaultnya adalah jumlah minimum yang diperlukan, 1 CPU.
    3. Di bagian Waktu tunggu tugas, tentukan jumlah waktu maksimum dalam detik untuk menjalankan tugas, hingga 168 jam (7 hari). Dukungan untuk waktu tunggu lebih dari 24 jam tersedia di Pratinjau. Setiap tugas harus selesai dalam jangka waktu ini. Defaultnya adalah 10 menit (600 detik).
    4. Di bagian Jumlah percobaan ulang per tugas yang gagal, tentukan jumlah percobaan ulang jika terjadi kegagalan tugas. Defaultnya adalah 3 percobaan ulang.
    • Di bawah Paralelisme:

      1. Dalam sebagian besar kasus, Anda dapat memilih Jalankan sebanyak mungkin tugas secara serentak.
      2. Jika Anda perlu menetapkan batas yang lebih rendah karena batasan penskalaan pada resource yang diakses tugas Anda, pilih Batasi jumlah tugas serentak dan tentukan jumlah maksimum tugas serentak di kolom Batas paralelisme kustom.
  8. Secara opsional, konfigurasikan setelan lainnya di tab yang sesuai:

  9. Setelah selesai mengonfigurasi tugas, klik Simpan untuk membuat tugas di Cloud Run dan tunggu hingga pembuatan tugas selesai.

  10. Untuk menjalankan tugas, lihat menjalankan tugas atau menjalankan tugas sesuai jadwal.

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. Jalankan perintah:

    gcloud run jobs update JOB_NAME

    Ganti:

    • JOB_NAME dengan nama pekerjaan yang ingin Anda perbarui.
    • Secara opsional, ganti OPTIONS dengan opsi berikut:

      Opsi Deskripsi
      --tasks Menerima bilangan bulat yang sama atau lebih besar dari 1. Default-nya adalah 1; maksimum adalah 10,000. Setiap tugas diberi variabel lingkungan CLOUD_RUN_TASK_INDEX dengan nilai antara 0 dan jumlah tugas minus 1, beserta CLOUD_RUN_TASK_COUNT, yang merupakan jumlah tugas
      --max-retries Frekuensi tugas yang gagal dicoba lagi. Setelah tugas gagal melebihi batas ini, seluruh tugas akan ditandai sebagai gagal. Misalnya, jika disetel ke 1, tugas yang gagal akan dicoba lagi sekali, dengan total dua kali. Defaultnya adalah 3. Menerima bilangan bulat dari 0 hingga 10.
      --task-timeout Menerima durasi seperti "2 dtk". Default-nya adalah 10 menit; maksimum 168 jam (7 hari). Dukungan untuk waktu tunggu lebih dari 24 jam tersedia di Pratinjau.
      --parallelism Jumlah tugas maksimum yang dapat dijalankan secara paralel. Secara default, tugas akan dimulai secepat mungkin, secara paralel. Lihat Paralelisme untuk rentang nilai.

    Selain opsi sebelumnya, Anda dapat menetapkan setelan konfigurasi opsional lainnya:

    Untuk daftar lengkap opsi yang tersedia saat membuat tugas, lihat dokumentasi command line buat tugas gcloud run.

  3. Tunggu hingga update tugas selesai. Setelah berhasil diselesaikan, pesan sukses akan ditampilkan, mirip dengan berikut ini:

    Job [JOB_NAME] has been successfully updated.
    View details about this job by running `gcloud run jobs describe JOB_NAME`.
    See logs for this execution at: https://console.cloud.google.com/logs/viewer?project=PROJECT_ID&resource=cloud_run_revision/service_name/JOB_NAME
  4. Untuk menjalankan tugas, lihat menjalankan tugas atau menjalankan tugas sesuai jadwal.

YAML

Jika Anda perlu mendownload atau melihat konfigurasi tugas yang sudah ada, gunakan perintah berikut untuk menyimpan hasil ke file YAML:

gcloud run jobs describe JOB --format export > job.yaml

Dari file YAML konfigurasi tugas, ubah atribut turunan spec.template sesuai kebutuhan untuk memperbarui setelan konfigurasi, lalu deploy ulang:

  1. Perbarui konfigurasi tugas yang ada:

    gcloud run jobs replace job.yaml
  2. Untuk menjalankan tugas, lihat menjalankan tugas atau menjalankan tugas sesuai jadwal.

Terraform

Buat perubahan pada konfigurasi tugas di file main.tf Anda menggunakan perintah terraform apply. Petunjuk Terraform mendetail tersedia untuk:

Untuk informasi selengkapnya, lihat opsi command line terraform apply.

Library klien

Untuk memperbarui tugas yang ada dari kode:

REST API

Untuk memperbarui tugas, kirim permintaan HTTP PATCH ke endpoint jobs Cloud Run Admin API.

Misalnya, menggunakan curl:

curl -H "Content-Type: application/json" \
  -H "Authorization: Bearer ACCESS_TOKEN" \
  -X PATCH \
  -d '{template: {template: {containers: [{image: "IMAGE_URL"}]}}}' \
  https://run.googleapis.com/v2/projects/PROJECT_ID/locations/REGION/jobs/JOB_NAME

Ganti:

  • ACCESS_TOKEN dengan token akses yang valid untuk akun yang memiliki izin IAM untuk memperbarui tugas. Misalnya, jika login ke gcloud, Anda dapat mengambil token akses menggunakan gcloud auth print-access-token. Dari dalam instance container Cloud Run, Anda dapat mengambil token akses menggunakan server metadata instance container.
  • JOB_NAME dengan nama tugas yang ingin Anda perbarui.
  • IMAGE_URL dengan URL image container tugas, misalnya, us-docker.pkg.dev/cloudrun/container/job:latest.
  • REGION dengan Google Cloud region tugas.
  • PROJECT_ID dengan Google Cloud project ID.

Kode contoh

Untuk mengetahui contoh kode yang menampilkan tugas, lihat panduan memulai khusus bahasa.

Men-deploy beberapa container ke tugas (sidecar)

Dalam deployment tugas Cloud Run dengan beberapa container (file bantuan), ada satu container tugas utama yang mengenkapsulasi konfigurasi tugas dan satu atau beberapa container file bantuan.

Anda dapat men-deploy hingga 10 container per instance, termasuk container tugas utama. Semua penampung dalam instance memiliki namespace jaringan yang sama dan dapat berbagi file menggunakan volume bersama dalam memori.

Kasus penggunaan

Sidecar biasanya digunakan untuk kasus penggunaan berikut:

  • Mengambil metrik kustom dari tugas Cloud Run dan mengirimkannya ke backend tertentu pilihan Anda menggunakan agen kolektor, seperti Prometheus atau Opentelemetry.
  • Mengizinkan aplikasi tanpa logika Hashicorp Vault bawaan untuk menggunakan rahasia statis dan dinamis yang bersumber dari Vault menggunakan sidecar Vault.

Men-deploy tugas dengan penampung sidecar

Anda dapat men-deploy beberapa sidecar ke tugas Cloud Run menggunakan Konsol Google Cloud, Google Cloud CLI, atau YAML.

Klik tab untuk mendapatkan petunjuk cara menggunakan alat pilihan Anda.

Konsol

  1. Di konsol Google Cloud, buka halaman Cloud Run:

    Buka Cloud Run

  2. Untuk men-deploy ke tugas yang ada, Klik Jobs, temukan tugas dalam daftar tugas, dan klik untuk membuka, lalu klik View and edit configuration untuk menampilkan formulir edit tugas.

  3. Untuk tugas baru, klik Deploy container, lalu klik Job. Berikan nama tugas dan URL ke image container tugas utama yang ingin Anda deploy.

  4. Klik Container(s), volumes, networking, security

  5. Di kartu Edit penampung, konfigurasikan penampung tugas utama sesuai kebutuhan.

  6. Klik Tambahkan penampung dan konfigurasikan penampung sidecar yang ingin Anda tambahkan bersama penampung tugas utama. Jika sidecar bergantung pada penampung lain dalam layanan, tunjukkan hal ini di menu drop-down Urutan pengaktifan penampung. Ulangi langkah ini untuk setiap penampung sidecar yang Anda deploy.

  7. Klik Create untuk layanan baru atau Update untuk tugas yang ada, lalu tunggu hingga deployment selesai.

gcloud

Parameter container di Google Cloud CLI masih dalam Pratinjau.

  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. Untuk men-deploy beberapa penampung ke tugas, jalankan perintah berikut:

    gcloud beta run jobs create JOB \
     --container JOB_CONTAINER_NAME \
     --image='JOB_IMAGE' \
     --container SIDECAR_CONTAINER_NAME \
     --image='SIDECAR_IMAGE'

    Ganti:

    • JOB dengan nama tugas yang menjadi tujuan deployment. Anda dapat menghilangkan parameter ini sepenuhnya, tetapi Anda akan diminta untuk memasukkan nama tugas jika mengabaikannya.
    • JOB_CONTAINER_NAME dengan nama untuk penampung tugas utama.
    • JOB_IMAGE dengan referensi ke image container tugas utama, misalnya, us-docker.pkg.dev/cloudrun/container/job:latest.
    • SIDECAR_CONTAINER_NAME dengan nama untuk penampung file bantuan, misalnya sidecar.
    • SIDECAR_IMAGE dengan referensi ke image container file bantuan.

    Jika Anda ingin mengonfigurasi setiap penampung dalam perintah deployment, berikan setiap konfigurasi penampung setelah parameter container, misalnya:

    gcloud beta run jobs create JOB \
      --container CONTAINER_1_NAME \
      --image='JOB_IMAGE' \
      --set-env-vars=KEY=VALUE \
      --container SIDECAR_CONTAINER_NAME \
      --image='SIDECAR_IMAGE' \
      --set-env-vars=KEY_N=VALUE_N
  3. Tunggu hingga deployment tugas selesai. Setelah berhasil diselesaikan, pesan berhasil akan ditampilkan.

YAML

Petunjuk ini menunjukkan file YAML dasar untuk tugas Cloud Run dengan file bantuan. Buat file bernama job.yaml yang berisi hal berikut:

apiVersion: run.googleapis.com/v1
kind: Job
metadata:
  annotations:
    run.googleapis.com/launch-stage: BETA
  name: JOB
spec:
  template:
    spec:
      containers:
      - image: JOB_IMAGE
      - image: SIDECAR_IMAGE
      

Ganti:

  • JOB dengan nama penampung tugas utama Cloud Run Anda. Nama tugas harus terdiri dari 49 karakter atau kurang.
  • JOB_IMAGE dengan referensi ke image container tugas utama, misalnya, us-docker.pkg.dev/cloudrun/container/job:latest. Secara opsional, berikan entri konfigurasi penampung yang diperlukan setelah entri ini.
  • SIDECAR_IMAGE dengan referensi ke image container file bantuan. Secara opsional, berikan entri konfigurasi penampung yang diperlukan setelah entri ini.Anda dapat menentukan beberapa file bantuan dengan menambahkan lebih banyak elemen ke array containers di YAML.

Setelah Anda memperbarui YAML untuk menyertakan container ingress dan file bantuan, deploy ke Cloud Run menggunakan perintah:

gcloud run jobs replace job.yaml

Fitur yang tersedia untuk deployment dengan file bantuan

Anda dapat menentukan urutan pengaktifan penampung dalam deployment dengan beberapa penampung, jika Anda memiliki dependensi yang memerlukan beberapa penampung untuk dimulai sebelum penampung lainnya dalam deployment tersebut.

Jika Anda memiliki penampung yang bergantung pada penampung lain, Anda harus menggunakan healthcheck startup dalam deployment Anda. Jika Anda menggunakan health check, Cloud Run akan mengikuti urutan startup container dan memeriksa kondisi setiap container, serta memastikan setiap container berhasil sebelum Cloud Run memulai container berikutnya sesuai urutan. Jika Anda tidak menggunakan health check, container yang responsif akan dimulai meskipun container yang menjadi dependensinya tidak berjalan.

Beberapa penampung dalam satu instance dapat mengakses volume dalam memori bersama, yang dapat diakses oleh setiap penampung menggunakan titik pemasangan yang Anda buat.

Langkah berikutnya

Setelah membuat atau memperbarui tugas, Anda dapat melakukan hal berikut: