Saat Anda menetapkan variabel lingkungan (environment variable), variabel tersebut dimasukkan ke dalam container dan dapat diakses oleh kode Anda. Variabel lingkungan ditetapkan dalam format pasangan kunci/nilai (key/value).
Nama yang dilindungi
Variabel lingkungan yang didefinisikan di dalam
container runtime contract
terkategorikan sebagai "dilindungi" dan tidak boleh diubah. Secara khusus, Cloud Run akan memasukkan variabel lingkungan PORT
ke dalam container Anda. Anda sebaiknya tidak mengaturnya
sendiri.
Jumlah maksimum variabel lingkungan
Perhatikan bahwa Anda dapat menetapkan maksimum 1.000 variabel lingkungan per penampung untuk setiap tugas Cloud Run.
Peran yang diperlukan
Untuk mendapatkan izin yang diperlukan guna mengonfigurasi tugas Cloud Run, minta administrator untuk memberi Anda peran IAM berikut pada tugas:
-
Cloud Run Developer (
roles/run.developer
) - tugas Cloud Run -
Service Account User (
roles/iam.serviceAccountUser
) - identitas layanan
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.
Menetapkan variabel lingkungan
Untuk menetapkan variabel lingkungan untuk tugas Cloud Run:
Konsol
Pada konsol Google Cloud, buka halaman tugas Cloud Run:
Klik Deploy container dan pilih Job untuk mengisi halaman setelan tugas awal. Jika Anda mengonfigurasi tugas yang sudah ada, pilih tugas, lalu klik Edit.
Klik Container, variabel dan secret, koneksi, keamanan untuk memperluas halaman properti tugas.
Klik tab Variabel.
- Lakukan hal berikut:
- Jika Anda ingin menambahkan variabel, klik Add Variable, dan tentukan nama dan nilai yang Anda inginkan untuk variabel tersebut pada kotak teks Nama dan Nilai.
- Jika Anda ingin mengubah nilai dari sebuah variabel, maka ganti nilai yang ada di kotak teks Nilai dengan nilai yang Anda inginkan.
- Jika Anda menghapus satu atau beberapa variabel lingkungan, arahkan kursor Anda ke sebelah kiri kotak teks Nilai dari variabel yang sedang Anda hapus untuk menampilkan ikon Sampah, lalu klik ikon tersebut.
- Lakukan hal berikut:
Klik Buat atau Perbarui.
gcloud
Tetapkan, perbarui, atau hapus variabel lingkungan dari layanan yang sudah ada, menggunakan perintah pembaruan tugas gcloud run . Anda dapat menggunakan salah satu tanda berikut, sesuai yang dibutuhkan:
- --set-env-vars
- --update-env-vars
- --remove-env-vars
-
Anda dapat menentukan variabel lingkungan selagi membuat tugas atau saat memperbarui tugas:
gcloud run jobs create JOB_NAME --image IMAGE_URL --update-env-vars KEY1=VALUE1,KEY2=VALUE2 gcloud run jobs update JOB_NAME --update-env-vars KEY1=VALUE1,KEY2=VALUE2
Ganti JOB_NAME dengan nama dari tugas Anda.
Ganti KEY1=VALUE1,KEY2=VALUE2, dengan daftar nama variabel yang diinginkan beserta nilainya, yang dipisahkan koma.
Ganti IMAGE_URL dengan referensi ke image container, misalnya,
us-docker.pkg.dev/cloudrun/container/job:latest
.
YAML
Jika Anda membuat tugas baru, lewati langkah ini. Jika Anda mengupdate tugas yang ada, download konfigurasi YAML-nya:
gcloud run jobs describe JOB_NAME --format export > job.yaml
- Update atribut
name
danvalue
di bawahenv
seperti yang ditunjukkan di bawahcontainers:
:
apiVersion: run.googleapis.com/v1 kind: Job metadata: name: JOB spec: template: spec: template: spec: containers: - image: IMAGE env: - name: KEY-1 value: VALUE-1 - name: KEY-N value: VALUE-N
Ganti KEY-1, VALUE-1 dengan variabel lingkungan dan nilai. Secara opsional tambahkan variabel dan nilai lainnya sesuai yang diinginkan.
Anda juga dapat menentukan konfigurasi lainnya seperti variabel lingkungan atau batas memori.
- Update atribut
Perbarui konfigurasi tugas yang ada:
gcloud run jobs replace job.yaml
Tetapkan beberapa variabel lingkungan
Jika Anda memiliki terlalu banyak variabel lingkungan yang tidak dapat dicantumkan dengan mudah dalam
format KEY1=VALUE1,KEY2=VALUE2
, secara alternatif Anda dapat menambahkan flag
yang tercantum di atas beberapa kali:
[...] --set-env-vars "KEY1=VALUE1" \ --set-env-vars "KEY2=VALUE2" \ --set-env-vars "KEY3=VALUE3"
Escape karakter koma
Karena karakter koma ,
digunakan untuk memisahkan antar variabel lingkungan, jika
variabel lingkungan Anda mengandung karakter koma sebagai nilai, Anda perlu
meng-escape karakter pemisah tersebut dengan
menentukan "karakter pemisah khusus", contohnya, @
:
--set-env-vars "^@^KEY1=value1,value2,value3@KEY2=..."
Menetapkan variabel lingkungan default dalam container
Anda dapat menggunakan pernyataan ENV
dalam Dockerfile untuk menetapkan nilai default dari variabel lingkungan:
ENV KEY1=VALUE1,KEY2=VALUE2
Urutan prioritas: container vs layanan atau variabel tugas
Jika Anda menetapkan variabel lingkungan default di dalam container dan juga menetapkan variabel lingkungan dengan nama yang sama pada layanan atau tugas Cloud Run, maka nilai yang ditetapkan pada layanan akan diutamakan.
Lihat setelan variabel lingkungan
Untuk melihat setelan variabel lingkungan saat ini untuk tugas Cloud Run Anda:
Konsol
Pada konsol Google Cloud, buka halaman tugas Cloud Run.
Klik tugas yang Anda minati untuk membuka halaman Detail pekerjaan.
Klik tab Configuration.
Temukan setelan variabel lingkungan di detail konfigurasi.
gcloud
Gunakan perintah berikut:
gcloud run jobs describe JOB_NAME
Temukan setelan variabel lingkungan di konfigurasi yang ditampilkan.