Mengonfigurasi penampung untuk tugas

Halaman ini menjelaskan cara mengonfigurasi argumen dan perintah entrypoint untuk tugas Cloud Run.

Saat Cloud Run memulai container, Cloud Run akan menjalankan perintah entrypoint default dan argumen perintah default image. Jika Anda ingin mengganti entrypoint default dan argumen perintah image, Anda dapat menggunakan kolom command dan args dalam konfigurasi container. Kolom command menentukan perintah sebenarnya yang dijalankan oleh container. Kolom args menentukan argumen yang diteruskan ke perintah tersebut.

Perhatikan bahwa Anda dapat memiliki maksimum 1.000 argumen per penampung untuk setiap tugas.

Halaman ini menunjukkan cara mengonfigurasi perintah, argumen, dan urutan mulai untuk container dalam tugas Cloud Run Anda.

Peran yang diperlukan

Untuk mendapatkan izin yang diperlukan untuk mengonfigurasi 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.

Mengonfigurasi entrypoint dan argumen

Anda dapat mengonfigurasi entrypoint dan argumen perintah untuk tugas menggunakan konsolGoogle Cloud , gcloud CLI, YAML, atau Terraform:

Konsol

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

    Buka Cloud Run

  2. Pilih Jobs dari menu navigasi Cloud Run:

    1. Jika Anda membuat tugas baru, klik Deploy container untuk mengisi halaman setelan tugas awal.

    2. Jika Anda mengonfigurasi tugas yang ada, pilih tugas, lalu klik Lihat dan edit konfigurasi tugas.

  3. Klik Containers, Connections, Security untuk memperluas halaman properti tugas.

  4. Tentukan perintah yang Anda inginkan untuk dijalankan container, jika bukan perintah yang ditentukan dalam container.

  5. Opsional: Tentukan argumen untuk perintah entrypoint.

  6. Klik Buat atau Perbarui.

gcloud

  • Untuk menetapkan argumen dan perintah mulai untuk tugas baru, jalankan perintah berikut:

    gcloud run jobs create JOB --image IMAGE_URL --command COMMAND --args ARG1,ARG_N

    Ganti kode berikut:

    • JOB: nama tugas Cloud Run Anda.
    • IMAGE_URL: referensi ke image container—misalnya, us-docker.pkg.dev/cloudrun/container/job:latest.
    • COMMAND: perintah yang digunakan untuk memulai container jika Anda tidak menggunakan perintah default.
    • ARG1: argumen yang Anda kirim ke perintah container. Untuk lebih dari satu argumen, gunakan daftar yang dipisahkan koma, misalnya, --args="arg1", "arg2", "arg3". Jika argumen Anda berisi koma atau karakter khusus, lihat Menggunakan tanda sama dengan atau koma dalam argumen.
  • Untuk memperbarui perintah dan argumen untuk tugas yang sudah ada, jalankan perintah berikut:

    gcloud run jobs update JOB --command COMMAND --args ARG1,ARG_N 
  • Untuk menghapus perintah dan argumen entrypoint, jalankan perintah berikut:

    gcloud run jobs update JOB --command "" --args "" 

YAML

  1. Jika Anda membuat tugas baru, lewati langkah ini. Jika Anda memperbarui tugas yang ada, download konfigurasi YAML-nya:

    gcloud run jobs describe JOB --format export > job.yaml
  2. Update atribut args: dan command:

    apiVersion: run.googleapis.com/v1
    kind: Job
    metadata:
      name: JOB
    spec:
      template:
        spec:
          template:
            spec:
              containers:
              - image: IMAGE_URL
                args:
                - ARG1'
                - ARG_N
                command:
                - COMMAND
                

    Ganti kode berikut:

    • JOB: nama tugas Cloud Run Anda.
    • IMAGE_URL: referensi ke image container—misalnya, us-docker.pkg.dev/cloudrun/container/job:latest.
    • ARG1: argumen yang Anda kirim ke perintah container. (Opsional) Tentukan argumen tambahan masing-masing dalam baris terpisah. Jika argumen Anda berisi koma atau karakter khusus, lihat Menggunakan tanda sama dengan atau koma dalam argumen.
    • COMMAND: perintah yang digunakan untuk memulai container jika Anda tidak menggunakan perintah default.
  3. Perbarui konfigurasi tugas yang ada:

    gcloud run jobs replace job.yaml

Terraform

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

Tambahkan kode berikut ke resource google_cloud_run_v2_job di konfigurasi Terraform Anda:
resource "google_cloud_run_v2_job" "default" {
 name     = "JOB"
 location = "REGION"

 template {
   template {
     containers {
       image = "us-docker.pkg.dev/cloudrun/container/job"
       command = ["COMMAND"]
       args = ["ARG1", "ARG_N"]
     }
   }
 }
}

Ganti kode berikut:

  • JOB: nama tugas Cloud Run Anda.
  • REGION: Google Cloud region. Contohnya, europe-west1.
  • COMMAND: perintah yang digunakan untuk memulai container jika Anda tidak menggunakan perintah default.
  • ARG1: argumen yang Anda kirim ke perintah container. Tentukan argumen tambahan secara opsional. Jika argumen Anda berisi koma atau karakter khusus, lihat Menggunakan tanda sama dengan atau koma dalam argumen.

Menggunakan tanda sama dengan atau koma dalam argumen

Jika Anda menggunakan tanda sama dengan dalam argumen, sediakan tanda sama dengan menggunakan format berikut:

gcloud run deploy  \
  --args="--repo-allowlist=github.com/example/example_demo"

Jika argumen Anda menggunakan koma, lihat mengonfigurasi variabel lingkungan untuk mengetahui lebih lengkap mengenai cara meng-escape variabel tersebut.

Menetapkan direktori kerja

Direktori kerja adalah tempat container menjalankan perintah dan argumennya. Anda dapat menentukan direktori kerja kustom untuk proses container selama deployment layanan baru atau yang sudah ada. Jika tidak ditentukan, direktori kerja default image penampung akan digunakan. Untuk mereset kolom ini ke defaultnya, kirimkan string kosong atau hapus kolom.

Anda dapat menetapkan direktori kerja menggunakan gcloud CLI, YAML, atau Terraform:

gcloud

Untuk memperbarui direktori kerja untuk tugas yang sudah ada, jalankan perintah berikut:

gcloud run jobs update JOB --workdir WORKING_DIR

Ganti kode berikut:

  • JOB: nama tugas Cloud Run Anda.
  • WORKING_DIR: direktori kerja penampung. Jika tidak ditentukan, default image penampung akan digunakan. Untuk mereset kolom ini ke defaultnya, teruskan string kosong "".

Untuk menentukan direktori kerja saat membuat tugas, jalankan perintah berikut:

gcloud run jobs create JOB --image IMAGE_URL --workdir WORKING_DIR

Ganti kode berikut:

  • JOB: nama tugas Cloud Run Anda.
  • IMAGE_URL: referensi ke image container—misalnya, us-docker.pkg.dev/cloudrun/container/job:latest.
  • WORKING_DIR: direktori kerja penampung. Jika tidak ditentukan, default image container akan digunakan. Untuk mereset kolom ini ke defaultnya, teruskan string kosong "".

YAML

  1. Jika Anda membuat tugas baru, lewati langkah ini. Jika Anda memperbarui tugas yang ada, download konfigurasi YAML-nya:

    gcloud run jobs describe JOB --format export > job.yaml
  2. Perbarui atribut workingDir::

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

    Ganti kode berikut:

    • JOB: nama tugas Cloud Run Anda.
    • IMAGE_URL: referensi ke image container—misalnya, us-docker.pkg.dev/cloudrun/container/job:latest.
    • WORKING_DIR (Opsional): direktori kerja container. Jika tidak ditentukan, default runtime container akan digunakan, yang mungkin dikonfigurasi dalam image container.
  3. Perbarui konfigurasi tugas yang ada:

    gcloud run jobs replace job.yaml

Terraform

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

Tambahkan kode berikut ke resource google_cloud_run_v2_job di konfigurasi Terraform Anda:
resource "google_cloud_run_v2_job" "default" {
 name     = "JOB"
 location = "REGION"

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

Ganti kode berikut:

  • JOB: nama tugas Cloud Run Anda.
  • REGION: Google Cloud region. Contohnya, europe-west1.
  • WORKING_DIR (Opsional): direktori kerja container. Jika tidak ditentukan, default runtime container akan digunakan, yang mungkin dikonfigurasi dalam image container.

Mengonfigurasi urutan awal container untuk deployment sidecar

Untuk menentukan urutan pengaktifan container dalam deployment sidecar, Anda harus menggunakan fitur dependensi container. Anda menentukan container yang memiliki dependensi dan mencantumkan container yang menjadi dependensinya. Container yang tidak memiliki dependensi apa pun selalu dimulai terlebih dahulu dan secara serentak.

Anda dapat menggunakan konsol Google Cloud , gcloud CLI, atau YAML untuk menentukan urutan startup:

Konsol

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

    Buka Cloud Run

  2. Jika Anda membuat tugas baru, ikuti langkah-langkah berikut:

    1. Klik Deploy container.
    2. Tentukan nama tugas, URL penampung tugas, region, dan jumlah tugas.
    3. Klik Containers, Networking, Security untuk meluaskan bagian tersebut.
    4. Konfigurasi container tugas utama.
    5. Untuk menambahkan setiap container sidecar yang Anda deploy, klik Tambahkan penampung.
    6. Jika container bergantung pada container lain, gunakan menu Urutan startup container untuk memilih container yang harus dimulai Cloud Run sebelum container saat ini.
  3. Jika Anda mengonfigurasi tugas yang ada, ikuti langkah-langkah berikut:

    1. Pilih tugas yang ingin Anda perbarui.
    2. Klik Lihat dan edit konfigurasi tugas.
    3. Klik Containers, Connections, Security untuk meluaskan bagian tersebut.
    4. Jika container bergantung pada container lain, gunakan menu Urutan peluncuran container untuk memilih container tersebut.
  4. Selesaikan konfigurasi lain yang diperlukan, lalu klik Buat untuk tugas baru atau Perbarui untuk tugas yang ada. Tunggu hingga deployment selesai.

gcloud

Untuk men-deploy beberapa container ke tugas dengan urutan startup yang ditentukan, jalankan perintah:

  gcloud beta run create JOB \
      --container CONTAINER_1_NAME --image='JOB_IMAGE' \
      --container CONTAINER_2_NAME --image='SIDECAR_IMAGE' --depends-on=CONTAINER_1_NAME \
      --container CONTAINER_3_NAME --image='SIDECAR_IMAGE' --depends-on=CONTAINER_1_NAMECONTAINER_2_NAME

Ganti kode berikut:

  • JOB: nama tugas Cloud Run Anda.
  • CONTAINER_1_NAME: nama untuk container tugas utama.
  • JOB_IMAGE: referensi ke image container tugas utama, misalnya, us-docker.pkg.dev/cloudrun/container/job:latest.
  • CONTAINER_2_NAME: nama untuk container sidecar, misalnya sidecar.
  • SIDECAR_IMAGE: referensi ke image container sidecar.

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

YAML

  1. Jika Anda membuat tugas baru, lewati langkah ini. Jika Anda memperbarui tugas yang ada, download konfigurasi YAML-nya:

    gcloud run jobs describe JOB --format export > job.yaml
  2. Perbarui atribut container-dependencies:

    apiVersion: run.googleapis.com/v1
    kind: Job
    metadata:
      annotations:
        run.googleapis.com/launch-stage: BETA
      name: JOB
    spec:
      template:
        metadata:
          annotations:
            run.googleapis.com/container-dependencies: '{"CONTAINER1":["CONTAINER2"], "CONTAINER3":["CONTAINER1","CONTAINER2"]}'
    

    Ganti kode berikut:

    • CONTAINER1: nama container pertama yang bergantung pada satu container atau lebih. Perhatikan bahwa Anda dapat menetapkan nama container dalam YAML: Cloud Run akan secara otomatis membuat nama jika nama tidak ditentukan.
    • CONTAINER2: nama container yang harus dimulai sebelum CONTAINER1.
    • CONTAINER3: nama container kedua yang bergantung pada satu container atau lebih.

    Dalam contoh yang ditampilkan dalam cuplikan YAML, CONTAINER2 dimulai terlebih dahulu, CONTAINER1 dimulai kedua, dan CONTAINER3 dimulai terakhir.

  3. Buat atau perbarui tugas menggunakan perintah berikut:

    gcloud run jobs replace job.yaml

    Perintah gcloud run jobs replace secara default akan menggunakan file job.yaml jika ada.

Menampilkan setelan container

Untuk melihat setelan container saat ini untuk tugas Cloud Run Anda, gunakan konsol Google Cloud atau Google Cloud CLI:

Konsol

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

    Buka tugas Cloud Run

  2. Klik tugas untuk membuka halaman Detail tugas.

  3. Klik Lihat dan edit konfigurasi tugas.

  4. Temukan setelan container di detail konfigurasi.

gcloud

  1. Jalankan perintah berikut:

    gcloud run jobs describe JOB
  2. Temukan setelan container dalam konfigurasi yang ditampilkan.