Tutorial ini menunjukkan penggunaan Cloud Run, Cloud Vision API, dan ImageMagick untuk mendeteksi dan memburamkan gambar menyinggung yang diupload ke bucket Cloud Storage. Tutorial ini dibuat berdasarkan tutorial Menggunakan Pub/Sub dengan Cloud Run.
Tutorial ini membahas cara memodifikasi aplikasi contoh yang sudah ada. Anda juga dapat mendownload contoh yang sudah selesai jika ingin.
Tujuan
- Menulis, membangun, dan men-deploy layanan pemrosesan data asinkron ke Cloud Run.
- Memanggil layanan dengan mengupload file ke Cloud Storage dan membuat pesan Pub/Sub.
- Gunakan Cloud Vision API untuk mendeteksi konten kekerasan atau khusus dewasa.
- Gunakan ImageMagick untuk memburamkan gambar yang menyinggung.
- Uji layanan dengan mengupload gambar zombie pemakan daging.
Biaya
Dalam dokumen ini, Anda menggunakan komponen Google Cloud yang dapat ditagih berikut:
Untuk membuat perkiraan biaya berdasarkan proyeksi penggunaan Anda,
gunakan kalkulator harga.
Sebelum memulai
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
Di konsol Google Cloud, pada halaman pemilih project, pilih atau buat project Google Cloud.
-
Make sure that billing is enabled for your Google Cloud project.
-
Di konsol Google Cloud, pada halaman pemilih project, pilih atau buat project Google Cloud.
-
Make sure that billing is enabled for your Google Cloud project.
-
Aktifkan API Artifact Registry, Cloud Build, Pub/Sub, Cloud Run, Cloud Storage and Cloud Vision.
- Instal dan lakukan inisialisasi gcloud CLI.
- Perbarui komponen:
gcloud components update
- Siapkan topik Pub/Sub, langganan push yang aman, dan layanan Cloud Run awal untuk menangani pesan dengan mengikuti Tutorial menggunakan Pub/Sub
Peran yang diperlukan
Untuk mendapatkan izin yang Anda perlukan untuk menyelesaikan tutorial, minta administrator Anda untuk memberi Anda peran IAM berikut di project Anda:
-
Editor Cloud Build (
roles/cloudbuild.builds.editor
) -
Cloud Run Admin (
roles/run.admin
) -
Logs View Accessor (
roles/logging.viewAccessor
) -
Project IAM Admin (
roles/resourcemanager.projectIamAdmin
) -
Pub/Sub Admin (
roles/pubsub.admin
) -
Service Account User (
roles/iam.serviceAccountUser
) -
Pelanggan Service Usage (
roles/serviceusage.serviceUsageConsumer
) -
Storage Admin (
roles/storage.admin
)
Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses ke project, folder, dan organisasi.
Anda mungkin juga bisa mendapatkan izin yang diperlukan melalui peran khusus atau peran bawaan lainnya.
Menyiapkan default gcloud
Untuk mengonfigurasi gcloud dengan setelan default untuk layanan Cloud Run Anda:
Setel project default Anda:
gcloud config set project PROJECT_ID
Ganti PROJECT_ID dengan nama project yang Anda buat untuk tutorial ini.
Konfigurasi gcloud untuk region yang Anda pilih:
gcloud config set run/region REGION
Ganti REGION dengan region Cloud Run pilihan Anda yang didukung.
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)asia-south1
(Mumbai, India)europe-north1
(Finlandia) CO2 Rendaheurope-southwest1
(Madrid) CO2 Rendaheurope-west1
(Belgia) CO2 Rendaheurope-west4
(Belanda) CO2 Rendaheurope-west8
(Milan)europe-west9
(Paris) CO2 Rendahme-west1
(Tel Aviv)us-central1
(Iowa) CO2 Rendahus-east1
(South Carolina)us-east4
(North Virginia)us-east5
(Columbus)us-south1
(Dallas) CO2 Rendahus-west1
(Oregon) 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
(Warsawa, Polandia)europe-west10
(Berlin) CO2 Rendaheurope-west12
(Turin)europe-west2
(London, Inggris Raya) CO2 Rendaheurope-west3
(Frankfurt, Jerman) CO2 Rendaheurope-west6
(Zurich, Swiss) CO2 Rendahme-central1
(Doha)me-central2
(Dammam)northamerica-northeast1
(Montreal) CO2 Rendahnorthamerica-northeast2
(Toronto) CO2 Rendahsouthamerica-east1
(São Paulo, Brasil) CO2 Rendahsouthamerica-west1
(Santiago, Cile) CO2 Rendahus-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.
Memahami urutan operasi
Alur data dalam tutorial ini mengikuti langkah-langkah berikut:
- Pengguna mengupload gambar ke bucket Cloud Storage.
- Cloud Storage memublikasikan pesan tentang file baru ke Pub/Sub.
- Pub/Sub mengirim pesan ke layanan Cloud Run.
- Layanan Cloud Run mengambil file gambar yang direferensikan dalam pesan Pub/Sub.
- Layanan Cloud Run menggunakan Cloud Vision API untuk menganalisis gambar.
- Jika konten kekerasan atau khusus dewasa terdeteksi, layanan Cloud Run akan menggunakan ImageMagick untuk memburamkan gambar.
- Layanan Cloud Run mengupload gambar yang diburamkan ke bucket Cloud Storage lain untuk digunakan.
Penggunaan gambar yang diburamkan berikutnya akan dibiarkan sebagai latihan bagi pembaca.
Membuat repositori standar Artifact Registry
Buat repositori standar Artifact Registry untuk menyimpan image container Anda:
gcloud artifacts repositories create REPOSITORY \ --repository-format=docker \ --location=REGION
Ganti:
- REPOSITORY dengan nama unik untuk repositori.
- REGION dengan region Google Cloud yang akan digunakan untuk repositori Artifact Registry.
Menyiapkan bucket Cloud Storage
gcloud
Buat bucket Cloud Storage untuk mengupload gambar, dengan INPUT_BUCKET_NAME nama bucket yang unik secara global:
gcloud storage buckets create gs://INPUT_BUCKET_NAME
Layanan Cloud Run hanya membaca dari bucket ini.
Buat bucket Cloud Storage kedua untuk menerima gambar yang diburamkan, dengan BLURRED_BUCKET_NAME nama bucket yang unik secara global:
gcloud storage buckets create gs://BLURRED_BUCKET_NAME
Layanan Cloud Run mengupload gambar yang diburamkan ke bucket ini. Menggunakan bucket terpisah akan mencegah gambar yang diproses memicu kembali layanan.
Secara default, revisi Cloud Run dijalankan sebagai akun layanan default Compute Engine.
Sebaliknya, jika Anda menggunakan akun layanan yang dikelola pengguna, pastikan Anda telah menetapkan peran IAM yang diperlukan sehingga akun tersebut memiliki izin
storage.objects.get
untuk membaca dari INPUT_BUCKET_NAME dan izinstorage.objects.create
untuk mengupload ke BLURRED_BUCKET_NAME.
Terraform
Untuk mempelajari cara menerapkan atau menghapus konfigurasi Terraform, lihat Perintah dasar Terraform.
Membuat dua bucket Cloud Storage: satu untuk mengupload gambar asli dan satu lagi layanan Cloud Run untuk mengupload gambar yang diburamkan.
Untuk membuat kedua bucket Cloud Storage dengan nama yang unik secara global, tambahkan kode berikut ke file main.tf
yang sudah ada:
Secara default, revisi Cloud Run dijalankan sebagai akun layanan default Compute Engine.
Sebaliknya, jika Anda menggunakan
akun layanan yang dikelola pengguna, pastikan
Anda telah menetapkan peran IAM yang diperlukan
sehingga akun tersebut memiliki izin storage.objects.get
untuk membaca dari
google_storage_bucket.imageproc_input
dan
izin storage.objects.create
untuk mengupload ke
google_storage_bucket.imageproc_output
.
Pada langkah berikut, Anda akan membuat dan men-deploy layanan yang memproses notifikasi upload file ke INPUT_BUCKET_NAME. Anda harus mengaktifkan pengiriman notifikasi setelah men-deploy dan menguji layanan, untuk menghindari pemanggilan layanan baru secara dini.
Mengubah kode contoh tutorial Pub/Sub
Tutorial ini dibuat berdasarkan kode yang disusun dalam Tutorial Menggunakan Pub/Sub. Jika Anda belum menyelesaikan tutorial tersebut, lakukan sekarang dan lewati langkah-langkah pembersihan, lalu kembali ke sini untuk menambahkan aktivitas pemrosesan gambar.
Menambahkan kode pemrosesan gambar
Kode pemrosesan gambar dipisahkan dari penanganan permintaan untuk keterbacaan dan kemudahan pengujian. Untuk menambahkan kode pemrosesan gambar:
Ubah ke direktori kode contoh tutorial Pub/Sub.
Tambahkan kode untuk mengimpor dependensi pemrosesan gambar, termasuk library untuk diintegrasikan dengan layanan Google Cloud, ImageMagick, dan sistem file.
Node.js
Buka fileimage.js
baru di editor Anda, lalu salin di hal berikut:Python
Buka fileimage.py
baru di editor Anda, lalu salin di hal berikut:Go
Buka fileimagemagick/imagemagick.go
baru di editor Anda, dan salin hal berikut:Java
Buka filesrc/main/java/com/example/cloudrun/ImageMagick.java
baru di editor Anda, lalu salin di hal berikut:Tambahkan kode untuk menerima pesan Pub/Sub sebagai objek peristiwa dan mengontrol pemrosesan gambar.
Peristiwa berisi data tentang gambar yang pertama kali diupload. Kode ini menentukan apakah gambar perlu diburamkan dengan memeriksa hasil analisis Cloud Vision untuk menemukan konten kekerasan atau khusus dewasa.
Node.js
Python
Go
Java
Ambil gambar yang direferensikan dari bucket input Cloud Storage yang dibuat di atas, gunakan ImageMagick untuk mengubah gambar dengan efek blur, dan upload hasilnya ke bucket output.
Node.js
Python
Go
Java
Mengintegrasikan pemrosesan gambar ke dalam kode contoh Pub/Sub
Untuk memodifikasi layanan yang ada guna memasukkan kode pemrosesan gambar:
Tambahkan dependensi baru untuk layanan Anda, termasuk library klien Cloud Storage dan Cloud Vision.
Node.js
npm install --save gm @google-cloud/storage @google-cloud/vision
Python
Tambahkan library klien yang diperlukan sehingga milikrequirements.txt
Anda akan terlihat seperti ini:Go
Contoh aplikasi go menggunakan modul go, dependensi baru yang ditambahkan di atas dalam pernyataan imporimagemagick/imagemagick.go
akan secara otomatis didownload oleh perintah berikutnya yang membutuhkan.Java
Tambahkan dependensi berikut<dependencyManagement>
di bagianpom.xml
: Tambahkan dependensi berikut<dependencies>
di bagianpom.xml
:Tambahkan paket sistem ImageMagick ke container Anda dengan mengubah
Dockerfile
pernyataanFROM
di bawah. Jika menggunakan Dockerfile "multi-tahap", tempatkan di tahap terakhir.Debian/Ubuntu Alpine Baca selengkapnya tentang cara bekerja dengan paket sistem di layanan Cloud Run dalam Tutorial menggunakan paket sistem.
Mengganti kode penanganan pesan Pub/Sub yang ada dengan panggilan fungsi ke logika pemburaman baru.
Node.js
Fileapp.js
menentukan aplikasi Express.js dan menyiapkan pesan Pub/Sub yang diterima untuk digunakan. Buat perubahan berikut:- Tambahkan kode untuk mengimpor file
image.js
baru - Hapus kode "Hello World" yang ada dari rute
- Tambahkan kode untuk memvalidasi pesan Pub/Sub lebih lanjut
Menambahkan kode untuk memanggil fungsi pemrosesan gambar baru
Setelah selesai, kodenya akan terlihat seperti ini:
Python
Filemain.py
menentukan aplikasi Flask dan menyiapkan pesan Pub/Sub yang diterima untuk digunakan. Buat perubahan berikut:- Tambahkan kode untuk mengimpor file
image.py
baru - Hapus kode "Hello World" yang ada dari rute
- Tambahkan kode untuk memvalidasi pesan Pub/Sub lebih lanjut
Menambahkan kode untuk memanggil fungsi pemrosesan gambar baru
Setelah selesai, kodenya akan terlihat seperti ini:
Go
Filemain.go
menentukan layanan HTTP dan menyiapkan pesan Pub/Sub yang diterima untuk digunakan. Buat perubahan berikut:- Tambahkan kode untuk mengimpor file
imagemagick.go
baru - Hapus kode "Hello World" yang ada dari pengendali
- Tambahkan kode untuk memvalidasi pesan Pub/Sub lebih lanjut
- Menambahkan kode untuk memanggil fungsi pemrosesan gambar baru
Java
FilePubSubController.java
menentukan pengontrol yang menangani permintaan HTTP dan menyiapkan pesan Pub/Sub yang diterima untuk digunakan. Buat perubahan berikut:- Menambahkan impor baru
- Hapus kode "Hello World" yang ada dari pengontrol
- Tambahkan kode untuk memvalidasi pesan Pub/Sub lebih lanjut
- Menambahkan kode untuk memanggil fungsi pemrosesan gambar baru
- Tambahkan kode untuk mengimpor file
Mendownload contoh lengkap
Untuk mengambil contoh kode Pemrosesan Gambar lengkap untuk digunakan:
Clone repositori aplikasi contoh ke mesin lokal Anda:
Node.js
git clone https://github.com/GoogleCloudPlatform/nodejs-docs-samples.git
Atau, Anda dapat mendownload contoh dalam file ZIP dan mengekstraknya.
Python
git clone https://github.com/GoogleCloudPlatform/python-docs-samples.git
Atau, Anda dapat mendownload contoh dalam file ZIP dan mengekstraknya.
Go
git clone https://github.com/GoogleCloudPlatform/golang-samples.git
Atau, Anda dapat mendownload contoh dalam file ZIP dan mengekstraknya.
Java
git clone https://github.com/GoogleCloudPlatform/java-docs-samples.git
Sebagai alternatif, anda dapat mendownload contoh seperti file zip dan mengekstraknya.
Ubah ke direktori yang berisikan kode contoh Cloud Run:
Node.js
cd nodejs-docs-samples/run/image-processing/
Python
cd python-docs-samples/run/image-processing/
Go
cd golang-samples/run/image-processing/
Java
cd java-docs-samples/run/image-processing/
Mengirimkan kode
Kode pengiriman terdiri dari tiga langkah: mem-build image container dengan Cloud Build, mengupload image container ke Artifact Registry, dan men-deploy image container ke Cloud Run.
Untuk kode pengiriman Anda:
Build container Anda dan publikasikan di Artifact Registry:
Node.js
gcloud builds submit --tag REGION-docker.pkg.dev/PROJECT_ID /REPOSITORY/pubsub
Dengan
pubsub
adalah nama layanan Anda.Ganti:
- PROJECT_ID dengan project ID Google Cloud Anda
- REPOSITORY dengan nama repositori Artifact Registry.
- REGION dengan region Google Cloud yang akan digunakan untuk repositori Artifact Registry.
Setelah berhasil, Anda akan melihat pesan SUCCESS yang berisi ID, waktu pembuatan, dan nama image. Image tersebut disimpan di Artifact Registry dan dapat digunakan kembali jika diperlukan.
Python
gcloud builds submit --tag REGION-docker.pkg.dev/PROJECT_ID /REPOSITORY/pubsub
Dengan
pubsub
adalah nama layanan Anda.Ganti:
- PROJECT_ID dengan project ID Google Cloud Anda
- REPOSITORY dengan nama repositori Artifact Registry.
- REGION dengan region Google Cloud yang akan digunakan untuk repositori Artifact Registry.
Setelah berhasil, Anda akan melihat pesan SUCCESS yang berisi ID, waktu pembuatan, dan nama image. Image tersebut disimpan di Artifact Registry dan dapat digunakan kembali jika diperlukan.
Go
gcloud builds submit --tag REGION-docker.pkg.dev/PROJECT_ID /REPOSITORY/pubsub
Dengan
pubsub
adalah nama layanan Anda.Ganti:
- PROJECT_ID dengan project ID Google Cloud Anda
- REPOSITORY dengan nama repositori Artifact Registry.
- REGION dengan region Google Cloud yang akan digunakan untuk repositori Artifact Registry.
Setelah berhasil, Anda akan melihat pesan SUCCESS yang berisi ID, waktu pembuatan, dan nama image. Image tersebut disimpan di Artifact Registry dan dapat digunakan kembali jika diperlukan.
Java
Contoh ini menggunakan Jib untuk mem-build image Docker menggunakan alat Java umum. Jib mengoptimalkan build container tanpa memerlukan Dockerfile atau menginstal Docker. Pelajari lebih lanjut cara mem-build container Java dengan Jib.Dengan Dockerfile, konfigurasikan dan build image dasar menggunakan paket sistem yang diinstal untuk menggantikan image dasar default Jib:
gcloud builds submit --tag REGION-docker.pkg.dev/PROJECT_ID /REPOSITORY/imagemagick
Ganti:
- PROJECT_ID dengan project ID Google Cloud Anda
- REPOSITORY dengan nama repositori Artifact Registry.
- REGION dengan region Google Cloud yang akan digunakan untuk repositori Artifact Registry.
Gunakan helper kredensial gcloud untuk memberi otorisasi Docker agar dikirim ke Artifact Registry Anda.
gcloud auth configure-docker
Build container akhir Anda dengan Jib dan publikasikan di Artifact Registry:
mvn compile jib:build \ -Dimage=REGION-docker.pkg.dev/PROJECT_ID /REPOSITORY/pubsub \ -Djib.from.image=REGION-docker.pkg.dev/PROJECT_ID /REPOSITORY/imagemagick
Ganti:
- PROJECT_ID dengan project ID Google Cloud Anda
- REPOSITORY dengan nama repositori Artifact Registry.
- REGION dengan region Google Cloud yang akan digunakan untuk repositori Artifact Registry.
Jalankan perintah berikut untuk men-deploy layanan Anda, menggunakan nama layanan yang sama dengan yang digunakan dalam Tutorial Menggunakan Pub/Sub:
Node.js
gcloud run deploy pubsub-tutorial --image REGION-docker.pkg.dev/PROJECT_ID /REPOSITORY/pubsub --set-env-vars=BLURRED_BUCKET_NAME=BLURRED_BUCKET_NAME --no-allow-unauthenticated
Python
gcloud run deploy pubsub-tutorial --image REGION-docker.pkg.dev/PROJECT_ID /REPOSITORY/pubsub --set-env-vars=BLURRED_BUCKET_NAME=BLURRED_BUCKET_NAME --no-allow-unauthenticated
Go
gcloud run deploy pubsub-tutorial --image REGION-docker.pkg.dev/PROJECT_ID /REPOSITORY/pubsub --set-env-vars=BLURRED_BUCKET_NAME=BLURRED_BUCKET_NAME --no-allow-unauthenticated
Java
gcloud run deploy pubsub-tutorial --image REGION-docker.pkg.dev/PROJECT_ID /REPOSITORY/pubsub --set-env-vars=BLURRED_BUCKET_NAME=BLURRED_BUCKET_NAME --memory 512M --no-allow-unauthenticated
Dengan
pubsub
adalah nama penampung danpubsub-tutorial
adalah nama layanan. Perhatikan bahwa image container di-deploy ke layanan dan region (Cloud Run) yang Anda konfigurasi sebelumnya di bagian Menyiapkan default gcloud. Ganti:- PROJECT_ID dengan project ID Google Cloud Anda
- REPOSITORY dengan nama repositori Artifact Registry.
- REGION dengan region Google Cloud yang akan digunakan untuk repositori Artifact Registry.
- BLURRED_BUCKET_NAME dengan bucket Cloud Storage yang Anda buat sebelumnya untuk menerima gambar yang diburamkan untuk menetapkan variabel lingkungan.
Flag
--no-allow-unauthenticated
membatasi akses yang tidak diautentikasi ke layanan. Dengan menjaga privasi layanan, Anda dapat mengandalkan integrasi Pub/Sub otomatis Cloud Run untuk mengautentikasi permintaan. Lihat Mengintegrasikan dengan Pub/Sub untuk mengetahui detail selengkapnya tentang cara konfigurasi ini. Baca bagian Mengelola Akses untuk mengetahui detail lebih lanjut tentang autentikasi berbasis IAM.Tunggu hingga deployment selesai: proses ini memerlukan waktu sekitar setengah menit. Jika berhasil, command line akan menampilkan URL layanan.
Mengaktifkan notifikasi dari Cloud Storage
Konfigurasi Cloud Storage untuk memublikasikan pesan ke topik Pub/Sub setiap kali file (dikenal sebagai objek) diupload atau diubah. Kirim notifikasi ke topik yang dibuat sebelumnya sehingga setiap upload file baru akan memanggil layanan.
gcloud
gcloud storage service-agent --project=PROJECT_ID gcloud storage buckets notifications create gs://INPUT_BUCKET_NAME --topic=myRunTopic --payload-format=json
myRunTopic
adalah topik yang Anda buat di tutorial sebelumnya.
Ganti INPUT_BUCKET_NAME dengan nama yang Anda gunakan saat membuat bucket.
Untuk detail selengkapnya tentang notifikasi bucket penyimpanan, baca notifikasi perubahan objek.
Terraform
Untuk mempelajari cara menerapkan atau menghapus konfigurasi Terraform, lihat Perintah dasar Terraform.
Untuk mengaktifkan notifikasi, akun layanan Cloud Storage yang unik ke project harus ada dan memiliki izin IAM pubsub.publisher
pada topik Pub/Sub. Untuk memberikan izin ini dan membuat notifikasi Cloud Storage, tambahkan kode berikut ke file main.tf
yang sudah ada:
Cobalah
Upload gambar yang menyinggung, seperti gambar zombie pemakan daging ini:
curl -o zombie.jpg https://cdn.pixabay.com/photo/2015/09/21/14/24/zombie-949916_960_720.jpg gcloud storage cp zombie.jpg gs://INPUT_BUCKET_NAME
pada INPUT_BUCKET_NAME bucket Cloud Storage yang Anda buat sebelumnya untuk mengupload gambar.
Buka log layanan:
- Buka halaman Cloud Run di Google Cloud Console
- Klik layanan
pubsub-tutorial
. - Pilih tab Logs. Log mungkin memerlukan waktu beberapa saat untuk ditampilkan. Jika Anda tidak segera melihatnya, periksa lagi setelah beberapa saat.
Cari pesan
Blurred image: zombie.png
.Anda dapat melihat gambar yang diburamkan di bucket Cloud Storage BLURRED_BUCKET_NAME yang Anda buat sebelumnya: cari bucket di halaman Cloud Storage di Google Cloud Console
Pembersihan
Jika Anda membuat project baru untuk tutorial ini, hapus project tersebut. Jika Anda menggunakan project yang ada dan ingin mempertahankannya tanpa ada perubahan yang ditambahkan dalam tutorial ini, hapus resource yang dibuat untuk tutorial.
Menghapus project
Cara termudah untuk menghilangkan penagihan adalah dengan menghapus project yang Anda buat untuk tutorial.
Untuk menghapus project:
- 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.
Menghapus resource tutorial
Hapus layanan Cloud Run yang Anda deploy dalam tutorial ini:
gcloud run services delete SERVICE-NAME
Dengan SERVICE-NAME adalah nama layanan pilihan Anda.
Anda juga dapat menghapus layanan Cloud Run dari Konsol Google Cloud.
Hapus konfigurasi region default gcloud yang Anda tambahkan selama penyiapan tutorial:
gcloud config unset run/region
Hapus konfigurasi project:
gcloud config unset project
Hapus resource Google Cloud lain yang dibuat dalam tutorial ini:
- Menghapus topik Pub/Sub
myRunTopic
- Menghapus langganan Pub/Sub
myRunSubscription
- Hapus image container Anda dari Artifact Registry.
- Menghapus akun layanan invoker
cloud-run-pubsub-invoker@PROJECT_ID.
- Hapus bucket Cloud Storage yang dibuat untuk placeholder
INPUT_BUCKET_NAME
danBLURRED_BUCKET_NAME
- Menghapus topik Pub/Sub
Langkah selanjutnya
- Pelajari lebih lanjut cara mempertahankan data dengan Cloud Run menggunakan Cloud Storage.
- Pahami cara menggunakan Cloud Vision API untuk mendeteksi hal-hal selain konten vulgar.
- Pelajari arsitektur referensi, diagram, dan praktik terbaik tentang Google Cloud. Lihat Cloud Architecture Center kami.