Panduan memulai: Men-deploy fungsi ke Cloud Run menggunakan gcloud CLI
Halaman ini menunjukkan cara menggunakan Cloud Run untuk men-deploy fungsi HTTP menggunakan gcloud CLI.
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.
-
Aktifkan API Artifact Registry, Cloud Build, Cloud Run Admin API, and Cloud Logging .
- 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.
-
Aktifkan API Artifact Registry, Cloud Build, Cloud Run Admin API, and Cloud Logging .
- 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.
- 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.
Menuliskan fungsi contoh
Untuk menulis aplikasi, ikuti langkah-langkah berikut:
Node.js
Buat sebuah direktori baru bernama
helloworld
dan ubah ke direktori tersebut:mkdir helloworld cd helloworld
Buat file
package.json
di direktorihelloworld
untuk menentukan Dependensi Node.js:Buat file
index.js
dalam direktorihelloworld
dengan perintah berikut Contoh Node.js:
Python
Buat sebuah direktori baru bernama
helloworld
dan ubah ke direktori tersebut:mkdir helloworld cd helloworld
Buat file
requirements.txt
di direktorihelloworld
, untuk menentukan Dependensi Python:Langkah ini akan menambahkan paket yang dibutuhkan oleh contoh.
Buat file
main.py
dalam direktorihelloworld
dengan perintah berikut Contoh Python:
Go
Buat sebuah direktori baru bernama
helloworld
dan ubah ke direktori tersebut:mkdir helloworld cd helloworld
Buat file
go.mod
untuk mendeklarasikan modul go:Anda dapat membuat file
go.mod
secara langsung dalam format seperti yang ditunjukkan, atau Anda dapat menginisialisasinya dari direktori project dengan:go mod init github.com/GoogleCloudPlatform/golang-samples/functions/functionsv2/helloworld/go.mod
Buat file
hello_http.go
dalam direktorihelloworld
dengan contoh kode Go berikut:
Java
Buat sebuah direktori baru bernama
helloworld
dan ubah ke direktori tersebut:mkdir helloworld cd helloworld
Buat struktur project berikut untuk memuat direktori sumber dan file sumber:
mkdir -p ~/helloworld/src/main/java/functions touch ~/helloworld/src/main/java/functions/HelloWorld.java
Update file
HelloWorld.java
dengan contoh kode Java berikut:Buat file
pom.xml
dalam direktorihelloworld
, lalu tambahkan berikut ini Dependensi Java:
.NET
Instal .NET SDK 6.0. Panduan memulai ini hanya berfungsi untuk .NET versi 6.
Dari konsol, buat project web kosong baru menggunakan perintah dotnet.
dotnet new web -o helloworld-csharp
Ubah direktori menjadi
helloworld-csharp
:Ganti kode contoh di file project
helloworld-csharp.csproj
dengan yang berikut:Ganti kode contoh di file
Program.cs
dengan kode berikut:
Men-deploy cloud function
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.
Untuk men-deploy fungsi Cloud Run, ikuti langkah-langkah berikut:
Deploy fungsi dengan menjalankan perintah berikut di direktori yang berisi kode contoh:
Node.js
gcloud beta run deploy nodejs-http-function \ --source . \ --function helloGET \ --base-image nodejs20 \ --region REGION \ --allow-unauthenticated
Ganti REGION dengan Google Cloud region layanan tempat Anda ingin men-deploy fungsi tersebut. Misalnya,
us-central1
.Python
gcloud beta run deploy python-http-function \ --source . \ --function hello_get \ --base-image python312 \ --region REGION \ --allow-unauthenticated
Ganti REGION dengan Google Cloud region layanan tempat Anda ingin men-deploy fungsi tersebut. Misalnya,
us-central1
.Go
gcloud beta run deploy go-http-function \ --source . \ --function HelloGet \ --base-image go122 \ --region REGION \ --allow-unauthenticated
Ganti REGION dengan Google Cloud region layanan tempat Anda ingin men-deploy fungsi tersebut. Misalnya,
us-central1
.Java
Jalankan perintah berikut di direktori yang berisi file
pom.xml
:gcloud beta run deploy java-http-function \ --source . \ --function functions.HelloWorld \ --base-image java21 \ --region REGION \ --allow-unauthenticated
Ganti REGION dengan Google Cloud region layanan tempat Anda ingin men-deploy fungsi tersebut. Misalnya,
us-central1
..NET
gcloud beta run deploy csharp-http-function \ --source . \ --function HelloWorld.Function \ --base-image dotnet6 \ --region REGION \ --allow-unauthenticated
Ganti REGION dengan Google Cloud region layanan tempat Anda ingin men-deploy fungsi tersebut. Misalnya,
us-central1
.Setelah deployment selesai, Google Cloud CLI akan menampilkan URL tempat layanan berjalan. Buka URL di browser Anda untuk melihat {i>output<i} dari fungsi Anda.
Untuk mempelajari cara menambahkan pemicu Eventarc ke fungsi Anda, lihat Panduan Deploy fungsi untuk mendapatkan petunjuk.
Pembersihan
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 selanjutnya
Untuk men-deploy fungsi sampel ke Cloud Run menggunakan Konsol Google Cloud, lihat Panduan memulai: Men-deploy fungsi ke Cloud Run menggunakan Konsol Google Cloud.
Untuk men-deploy fungsi dan membuat pemicu menggunakan Konsol Google Cloud dan Google Cloud CLI, lihat Men-deploy fungsi.
Untuk melihat dan menghapus fungsi yang ada, lihat Kelola revisi layanan.
Untuk membangun container fungsi di toolchain Anda sendiri dan men-deploy-nya ke Cloud Run, lihat Fungsi build.