Panduan memulai: Men-deploy layanan Python ke Cloud Run
Pelajari cara membuat aplikasi Hello World sederhana, mengemasnya ke image container, mengupload image container ke Artifact Registry, dan lalu deploy image container ke Cloud Run.
Untuk mengikuti panduan langkah demi langkah tugas ini langsung di Cloud Shell Editor, klik Pandu saya:
Sebelum memulai
- Login ke akun Google Cloud Anda. Jika Anda baru menggunakan Google Cloud, buat akun untuk mengevaluasi performa produk kami dalam skenario dunia nyata. Pelanggan baru juga mendapatkan kredit gratis senilai $300 untuk menjalankan, menguji, dan men-deploy workload.
-
Di konsol Google Cloud, pada halaman pemilih project, pilih atau buat project Google Cloud.
-
Pastikan penagihan telah diaktifkan untuk project Google Cloud Anda.
- Menginstal Google Cloud CLI.
-
Untuk initialize gcloud CLI, jalankan perintah berikut:
gcloud init
-
Di konsol Google Cloud, pada halaman pemilih project, pilih atau buat project Google Cloud.
-
Pastikan penagihan telah diaktifkan untuk project Google Cloud Anda.
- Menginstal Google Cloud CLI.
-
Untuk initialize gcloud CLI, jalankan perintah berikut:
gcloud init
- Guna menetapkan project default untuk layanan Cloud Run Anda:
Ganti PROJECT_ID dengan nama project yang Anda buat untuk panduan memulai ini.gcloud config set project PROJECT_ID
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.
Aktifkan Cloud Run Admin API:
gcloud services enable run.googleapis.com
Setelah Cloud Run Admin API diaktifkan, akun layanan default Compute Engine akan otomatis dibuat.
- Agar Cloud Build dapat membangun sumber Anda, berikan izin
Akun Layanan Cloud Build
ke akun layanan default Compute Engine dengan menjalankan perintah berikut:
gcloud projects add-iam-policy-binding PROJECT_ID \ --member=serviceAccount:PROJECT_NUMBER-compute@ \ --role=roles/cloudbuild.builds.builder
Ganti
PROJECT_NUMBER
dengan Google Cloud Anda nomor project, danPROJECT_ID
dengan data Google Cloud project ID Anda.Anda dapat menemukan nomor project dan ID project Anda di Selamat datang halaman Konsol Google Cloud.
Menulis aplikasi contoh
Untuk menulis aplikasi di Python:
Buat direktori baru bernama
helloworld
dan ubah ke direktori tersebut:mkdir helloworld cd helloworld
Buat file bernama
main.py
lalu tempelkan kode berikut ke dalamnya: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
PORT
variabel lingkungan port.Buat file bernama
requirements.txt
lalu tempelkan kode berikut ke dalamnya:Langkah ini akan menambahkan paket yang dibutuhkan oleh contoh.
Aplikasi Anda sudah jadi dan siap di-deploy.
Deploy ke Cloud Run dari sumber
Penting: Panduan memulai ini mengasumsikan bahwa Anda memiliki peran pemilik atau editor dalam project yang Anda gunakan untuk panduan memulai tersebut. Jika tidak, lihat peran Cloud Run Source Developer guna mendapatkan izin yang diperlukan untuk men-deploy resource Cloud Run dari sumber.
Men-deploy dari sumber secara otomatis akan mem-build image container dari kode sumber dan men-deploy-nya.
Untuk men-deploy dari sumber:
Dalam direktori kode sumber Anda, deploy dari sumber menggunakan perintah berikut:
gcloud run deploy
Jika diminta mengaktifkan API, Balas y untuk mengaktifkan.
Ketika Anda diminta untuk memasukkan lokasi kode sumber, tekan Enter untuk men-deploy folder saat ini.
Saat diminta memasukkan nama layanan, tekan Enter untuk menerima nama default, misalnya
helloworld
.Jika Anda diminta untuk mengaktifkan API pada project, misalnya, Artifact Registry API, merespons dengan menekan
y
.Saat Anda diminta untuk memasukkan region: pilih region pilihan Anda, misalnya
us-central1
.Jika Anda diminta untuk membuat repositori di region yang ditentukan, respons dengan menekan
y
.Jika Anda diminta untuk mengizinkan pemanggilan yang tidak diautentikasi: respons
y
. Anda mungkin tidak akan melihat dialog ini jika ada domain pembatasan kebijakan organisasi yang mencegahnya; untuk mengetahui detail selengkapnya, lihat Bagian Sebelum memulai.
Lalu tunggu sebentar sampai proses deployment selesai. Jika berhasil, command line akan menampilkan URL layanannya.
Kunjungi layanan yang telah di-deploy dengan membuka URL layanan pada browser web.
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 dari produk Google Cloud
lain yang digunakan oleh layanan Cloud Run Anda.
Menggunakan produk Google Cloud 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)europe-north1
(Finlandia) Rendah CO2europe-southwest1
(Madrid) Rendah CO2europe-west1
(Belgia) Rendah CO2europe-west4
(Belanda) Rendah CO2europe-west8
(Milan)europe-west9
(Paris) Rendah CO2me-west1
(Tel Aviv)us-central1
(Iowa) Rendah CO2us-east1
(South Carolina)us-east4
(North Virginia)us-east5
(Columbus)us-south1
(Dallas) Rendah CO2us-west1
(Oregon) Rendah CO2
Tergantung harga Tingkat 2
africa-south1
(Johannesburg)asia-east2
(Hong Kong)asia-northeast3
(Seoul, Korea Selatan)asia-southeast1
(Singapura)asia-southeast2
(Jakarta)asia-south1
(Mumbai, India)asia-south2
(Delhi, India)australia-southeast1
(Sydney)australia-southeast2
(Melbourne)europe-central2
(Warsawa, Polandia)europe-west10
(Berlin) Rendah CO2europe-west12
(Turin)europe-west2
(London, Inggris) Rendah CO2europe-west3
(Frankfurt, Jerman) Rendah CO2europe-west6
(Zurich, Swiss) Rendah CO2me-central1
(Doha)me-central2
(Dammam)northamerica-northeast1
(Montreal) Rendah CO2northamerica-northeast2
(Toronto) Rendah CO2southamerica-east1
(Sao Paulo, Brasil) Rendah CO2southamerica-west1
(Santiago, Cile) Rendah CO2us-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.
Selamat! Anda baru saja men-deploy image container dari kode sumber ke Cloud Run. Cloud Run meningkatkan skala image container secara otomatis dan horizontal untuk menangani permintaan yang diterima, lalu menurunkan skala saat permintaan berkurang. Anda hanya membayar untuk CPU, memori, dan jaringan yang terpakai selama penanganan permintaan.
Pembersihan
Menghapus project pengujian Anda
Meskipun Cloud Run tidak mengenakan biaya saat layanannya tidak digunakan, Anda mungkin tetap dikenai biaya atas penyimpanan image container di Artifact Registry. Anda dapat menghapus image container atau menghapus project Google Cloud untuk menghindari tagihan. Menghapus project Google Cloud Anda akan menghentikan penagihan untuk semua resource yang digunakan dalam project tersebut.
- Di konsol Google Cloud, buka halaman Manage resource.
- Pada daftar project, pilih project yang ingin Anda hapus, lalu klik Delete.
- Pada dialog, ketik project ID, lalu klik Shut down untuk menghapus project.
Langkah berikutnya
Untuk informasi lebih lanjut dalam mem-build container dari kode sumber dan penerapan untuk repositori, lihat: