Halo Cloud Run
- Ringkasan
- Penyiapan dan persyaratan
- Tugas 1. Mengaktifkan Cloud Run API dan mengonfigurasi lingkungan Shell
- Tugas 2. Menulis aplikasi contoh
- Tugas 3. Memasukkan aplikasi ke dalam container dan menguploadnya ke Artifact Registry
- Tugas 4. Men-deploy ke Cloud Run
- Tugas 5. Pembersihan
- Mengakhiri lab Anda
- Selamat!
Ringkasan
Cloud Run adalah platform komputasi terkelola yang memungkinkan Anda untuk menjalankan container stateless yang dapat dipanggil melalui permintaan HTTP. Cloud Run bersifat serverless. Platform ini memisahkan semua pengelolaan infrastruktur di lokasi lain, sehingga Anda dapat fokus pada hal terpenting, yakni membuat aplikasi yang andal.
Cloud Run di-build dari Knative, sehingga Anda dapat memilih untuk menjalankan container secara terkelola sepenuhnya dengan Cloud Run, atau di cluster Google Kubernetes Engine dengan Cloud Run di GKE.
Tujuan lab ini adalah untuk mempersiapkan Anda membangun image aplikasi sederhana dalam container dan men-deploy-nya di Cloud Run.
Tujuan
Di lab ini, Anda mempelajari cara:
- Mengaktifkan Cloud Run API.
- Membuat aplikasi Node.js sederhana yang dapat di-deploy sebagai container stateless serverless.
- Memasukkan aplikasi ke dalam container dan menguploadnya ke Artifact Registry.
- Men-deploy aplikasi dalam container di Cloud Run.
- Menghapus image yang tidak diperlukan untuk menghindari timbulnya biaya penyimpanan tambahan.
Penyiapan dan persyaratan
Untuk setiap lab, Anda akan memperoleh project Google Cloud baru serta serangkaian resource selama jangka waktu tertentu, tanpa biaya.
-
Klik tombol Start Lab. Jika Anda perlu membayar lab, jendela pop-up akan terbuka untuk memilih metode pembayaran. Di sebelah kiri adalah panel Lab Details yang memuat sebagai berikut:
- Tombol Open Google Cloud console
- Waktu tersisa
- Kredensial sementara yang harus Anda gunakan untuk lab ini
- Informasi lain, jika diperlukan, untuk menyelesaikan lab ini
-
Klik Open Google Cloud console (atau klik kanan dan pilih Open Link in Incognito Window jika Anda menjalankan browser Chrome).
Lab akan menjalankan resource, lalu membuka tab lain yang menampilkan halaman Sign in.
Tips: Atur tab di jendela terpisah secara berdampingan.
Catatan: Jika Anda melihat dialog Choose an account, klik Use Another Account. -
Jika perlu, salin Username di bawah dan tempel ke dialog Sign in.
{{{user_0.username | "Username"}}} Anda juga dapat menemukan Username di panel Lab Details.
-
Klik Next.
-
Salin Password di bawah dan tempel ke dialog Welcome.
{{{user_0.password | "Password"}}} Anda juga dapat menemukan Password di panel Lab Details.
-
Klik Next.
Penting: Anda harus menggunakan kredensial yang diberikan lab. Jangan menggunakan kredensial akun Google Cloud Anda. Catatan: Menggunakan akun Google Cloud sendiri untuk lab ini dapat dikenai biaya tambahan. -
Klik halaman berikutnya:
- Setujui persyaratan dan ketentuan.
- Jangan tambahkan opsi pemulihan atau autentikasi 2 langkah (karena ini akun sementara).
- Jangan mendaftar uji coba gratis.
Setelah beberapa saat, Konsol Google Cloud akan terbuka di tab ini.
Mengaktifkan Google Cloud Shell
Google Cloud Shell adalah virtual machine yang dilengkapi dengan berbagai fitur pengembangan. Virtual machine ini menawarkan direktori beranda persisten berkapasitas 5 GB dan berjalan di Google Cloud.
Google Cloud Shell menyediakan akses command line untuk resource Google Cloud Anda.
-
Di Cloud Console, pada toolbar di kanan atas, klik tombol Open Cloud Shell.
-
Klik Continue.
Proses menyediakan dan menghubungkan ke lingkungan memerlukan waktu beberapa saat. Setelah terhubung, Anda sudah diautentikasi, dan project ditetapkan ke PROJECT_ID Anda. Contoh:
gcloud adalah alat command line untuk Google Cloud. Alat ini sudah terinstal di Cloud Shell dan mendukung pelengkapan command line.
- Anda dapat menampilkan daftar nama akun yang aktif dengan perintah ini:
Output:
Contoh output:
- Anda dapat menampilkan daftar project ID dengan perintah ini:
Output:
Contoh output:
Referensi
Perintah Linux Dasar
Di bawah ini Anda akan menemukan daftar referensi untuk beberapa perintah Linux paling mendasar yang mungkin diberikan dalam petunjuk atau blok kode untuk lab ini.
Perintah --> | Tindakan | . | Perintah --> | Tindakan |
---|---|---|---|---|
mkdir (make directory) | membuat folder baru | . | cd (change directory) | mengubah lokasi ke folder lain |
ls (list ) | mencantumkan file dan folder di direktori | . | cat (concatenate) | membaca konten file tanpa menggunakan editor |
apt-get update | mengupdate library pengelola paket | . | ping | sinyal untuk menguji keterjangkauan host |
mv (move ) | memindahkan file | . | cp (copy) | membuat salinan file |
pwd (present working directory ) | kembali ke lokasi Anda saat ini | . | sudo (super user do) | memberi hak istimewa administrator yang lebih tinggi |
Tugas 1. Mengaktifkan Cloud Run API dan mengonfigurasi lingkungan Shell
- Dari Cloud Shell, aktifkan Cloud Run API:
- Lakukan otorisasi penggunaan kredensial Anda jika diminta. Anda kemudian akan melihat pesan seperti berikut yang menandakan bahwa proses berhasil:
- Tetapkan region komputasi:
- Buat variabel lingkungan LOCATION:
Tugas 2. Menulis aplikasi contoh
Dalam tugas ini, Anda akan mem-build aplikasi NodeJS sederhana berbasis express yang merespons permintaan HTTP.
- Di Cloud Shell, buat direktori baru bernama
helloworld
, lalu pindahkan tampilan Anda ke dalam direktori tersebut:
-
Berikutnya, Anda akan membuat dan mengedit file. Untuk mengedit file, gunakan
nano
atau Editor Kode Cloud Shell dengan mengklik tombol Open Editor di Cloud Shell. -
Buat file
package.json
, lalu tambahkan konten berikut ke dalamnya:
Dan yang paling penting, file di atas berisi perintah mulai skrip dan dependensi pada framework aplikasi web Express.
-
Tekan CTRL+X, lalu Y, kemudian Enter untuk menyimpan file
package.json
. -
Berikutnya, di direktori yang sama, buat file
index.js
, lalu tempel baris berikut ke dalamnya:
Kode ini menghasilkan server web dasar yang memantau (listen) port yang ditentukan oleh variabel lingkungan PORT
. Aplikasi Anda kini sudah jadi dan siap dimasukkan ke dalam container serta diupload ke Artifact Registry.
- Tekan CTRL+X, lalu Y, kemudian Enter untuk menyimpan file
index.js
.
Tugas 3. Memasukkan aplikasi ke dalam container dan menguploadnya ke Artifact Registry
- Untuk memasukkan aplikasi sampel ke dalam container, buat file baru dengan nama
Dockerfile
di dalam direktori yang sama dengan file sumber, lalu tambahkan konten berikut:
-
Tekan CTRL+X, lalu Y, kemudian Enter untuk menyimpan file
Dockerfile
. -
Sekarang, bangun image container Anda menggunakan Cloud Build dengan menjalankan perintah berikut dari direktori yang berisi
Dockerfile.
(Perhatikan variabel lingkungan $GOOGLE_CLOUD_PROJECT di perintah, yang berisi ID Project lab Anda):
Cloud Build adalah layanan yang menjalankan build Anda di Google Cloud. Dengan satu perintah, layanan ini menjalankan serangkaian langkah build yang masing-masing dijalankan dalam container Docker untuk menghasilkan container aplikasi Anda (atau artefak lain), lalu mengirimkannya ke Artifact Registry.
Setelah dikirimkan ke registry, Anda akan melihat pesan SUCCESS yang berisi nama image (gcr.io/[PROJECT-ID]/helloworld
). Image tersebut disimpan di Artifact Registry dan dapat digunakan kembali bila diinginkan.
- Tampilkan daftar semua image container yang terkait dengan project saat ini menggunakan perintah berikut:
- Daftarkan
gcloud
sebagai pembantu kredensial untuk semua registry Docker yang didukung Google:
- Untuk menjalankan dan menguji aplikasi secara lokal dari Cloud Shell, gunakan perintah
docker
standar ini:
- Di jendela Cloud Shell, klik Web preview lalu pilih Preview on port 8080.
Tindakan ini akan membuka jendela browser berisi pesan "Hello World!". Anda juga dapat menggunakan curl localhost:8080
.
Tugas 4. Men-deploy ke Cloud Run
- Deploy aplikasi Anda yang ada di dalam container ke Cloud Run menggunakan perintah berikut, dan tambahkan ID Project Anda:
Flag allow-unauthenticated pada perintah di atas akan membuat layanan Anda dapat diakses secara publik.
- Saat diminta, konfirmasi
service name
dengan menekan Enter.
Tunggu sebentar sampai proses deployment selesai.
Jika berhasil, command line akan menampilkan URL layanan:
Sekarang Anda dapat melihat container yang telah di-deploy dengan membuka URL layanan di jendela browser apa pun.
Selamat! Anda telah men-deploy aplikasi yang dikemas dalam image container ke Cloud Run. Cloud Run meningkatkan skala image container secara otomatis dan horizontal untuk menangani permintaan yang diterima, lalu menurunkan skala saat permintaan berkurang. Di lingkungan Anda sendiri, Anda hanya membayar untuk CPU, memori, dan jaringan yang terpakai selama permintaan ditangani.
Untuk lab ini, Anda telah menggunakan command line gcloud
. Cloud Run juga tersedia melalui Cloud Console.
- Dari Navigation menu, di bagian Serverless, klik Cloud Run, dan layanan
helloworld
Anda akan ditampilkan:
Tugas 5. Pembersihan
Meskipun Cloud Run tidak mengenakan biaya selama layanannya tidak digunakan, Anda mungkin akan tetap ditagih atas penyimpanan image container yang telah dibuat.
- Anda dapat memilih untuk menghapus project Google Cloud Anda untuk menghentikan tagihan, yang artinya akan menghentikan penagihan atas semua resource yang digunakan dalam project tersebut, atau cukup hapus image
helloworld
Anda dengan perintah ini:
-
Jika diminta untuk melanjutkan, ketik
Y
, lalu tekan Enter. -
Untuk menghapus layanan Cloud Run, gunakan perintah berikut:
- Jika diminta untuk melanjutkan, ketik
Y
, lalu tekan Enter.
Mengakhiri lab Anda
Setelah Anda menyelesaikan lab, klik Akhiri Lab. Google Cloud Skills Boost menghapus resource yang telah Anda gunakan dan membersihkan akun.
Anda akan diberi kesempatan untuk menilai pengalaman menggunakan lab. Pilih jumlah bintang yang sesuai, ketik komentar, lalu klik Submit.
Makna jumlah bintang:
- 1 bintang = Sangat tidak puas
- 2 bintang = Tidak puas
- 3 bintang = Netral
- 4 bintang = Puas
- 5 bintang = Sangat puas
Anda dapat menutup kotak dialog jika tidak ingin memberikan masukan.
Untuk masukan, saran, atau koreksi, gunakan tab Support.
Selamat!
Anda telah menyelesaikan lab ini!
Langkah berikutnya/pelajari lebih lanjut
Untuk mengetahui informasi selengkapnya tentang cara membangun container HTTP stateless yang cocok untuk Cloud Run dari sumber kode dan mengirimkannya ke Artifact Registry, baca artikel:
Hak cipta 2020 Google LLC Semua hak dilindungi undang-undang. Google dan logo Google adalah merek dagang dari Google LLC. Semua nama perusahaan dan produk lain mungkin adalah merek dagang masing-masing perusahaan yang bersangkutan.