ID region
REGION_ID
adalah kode singkat yang ditetapkan Google berdasarkan region yang Anda pilih saat membuat aplikasi. Kode ini tidak sesuai dengan negara atau provinsi, meskipun beberapa ID region mungkin tampak mirip dengan kode negara dan provinsi yang umum digunakan. Untuk aplikasi yang dibuat setelah Februari 2020, REGION_ID.r
disertakan dalam URL App Engine. Untuk aplikasi lama yang dibuat sebelum tanggal tersebut, ID region bersifat opsional dalam URL.
Pelajari ID region lebih lanjut.
Panduan ini membantu Anda memulai App Engine dan memahami cara mengembangkan, men-deploy, dan mengelola aplikasi Go.
Biaya
Panduan ini bersifat gratis. Menjalankan aplikasi contoh ini saja tidak akan melebihi kuota gratis Anda.
Menyiapkan lingkungan pengembangan Anda
Anda dapat menggunakan komputer lokal Anda dan menggunakan alat yang sudah biasa Anda gunakan, atau Cloud Shell. Cloud Shell telah menginstal Google Cloud CLI, lingkungan Anda sudah disiapkan, dan banyak fitur lainnya.
Komputer Lokal
Instal Go dan siapkan gcloud CLI.
Cloud Shell
Luncurkan Cloud Shell, yang didalamnya telah terinstal semua alat yang Anda perlukan:
Membuat project Google Cloud
Project diwajibkan untuk menggunakan Google Cloud, dan membentuk dasar untuk menggunakan semua layanan Google Cloud.
- 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.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Cloud Build API.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Cloud Build API.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
- Buat aplikasi App Engine Anda dan resource yang terkait. Anda harus
memilih lokasi yang tidak dapat diubah nanti.
gcloud app create
Menulis layanan web dasar untuk App Engine
Pelajari cara menulis layanan web dan mendeklarasikan setelan runtime.
Membuat struktur file Anda
Layanan Anda akan memiliki struktur file berikut:
go-app/
: direktori untuk layanan Go 1.11 Anda.app.yaml
: Setelan konfigurasi layanan Anda.main.go
: Kode aplikasi Anda.
Membuat file app.yaml
Setiap project App Engine memiliki file konfigurasi app.yaml
yang
menentukan setelan lingkungan runtime layanan Anda. Layanan Anda tidak akan
di-deploy tanpa file ini.
Buat folder baru bernama
go-app
untuk layanan Go 1.11 Anda:mkdir go-app
Di folder
go-app/
, buat file dengan namaapp.yaml
, lalu tambahkan konten berikut:Ini adalah konfigurasi paling sederhana untuk aplikasi App Engine. Hal ini menunjukkan kepada App Engine bahwa Anda menggunakan runtime Go 1.11. File
app.yaml
juga dapat menentukan setelan jaringan, setelan penskalaan, dan lainnya. Untuk informasi selengkapnya, lihat referensiapp.yaml
.
Membuat file main.go
Contoh ini menggunakan paket
net/http
untuk membuat server HTTP yang mencetak "Halo dunia".
Untuk menyiapkan file main.go
Anda:
Di folder
go-app/
, buat filemain.go
.Tambahkan pernyataan
package main
untuk memperlakukan kode Anda sebagai program yang dapat dieksekusi:package main
Agar berhasil men-deploy layanan dalam runtime Go 1.11, pernyataan
package main
harus ditentukan di awal setidaknya salah satu file sumber Go Anda di direktori yang sama dengan fileapp.yaml
layanan Anda.Impor paket berikut:
Tentukan pengendali HTTP Anda:
Objek
http.ResponseWriter
menyusun respons server HTTP; dengan menulis ke situ, Anda akan mengirim data ke browser. Objekhttp.Request
adalah struktur data yang mewakili permintaan HTTP yang masuk.Daftarkan pengendali HTTP Anda:
Fungsi
main
adalah titik entri program yang dapat dieksekusi sehingga akan memulai aplikasi. Proses ini dimulai dengan panggilan ke fungsihttp.HandleFunc
yang memberi tahu pakethttp
untuk menangani semua permintaan ke root web ("/"
) dengan fungsiindexHandler
.Jika variabel lingkungan
PORT
tidak disetel, port8080
akan digunakan sebagai default. Saat aplikasi Anda berjalan di App Engine, variabel lingkunganPORT
akan disetel untuk Anda. Namun, saat menguji aplikasi secara lokal, Anda dapat menyetelPORT
ke nilai apa pun yang diinginkan.
Men-deploy layanan web Anda di App Engine
Di direktori
go-app
tempat fileapp.yaml
Anda berada, deploy layanan web Anda ke App Engine menggunakan perintah berikut:gcloud app deploy
Untuk meluncurkan browser dan melihat layanan web Anda di
https://PROJECT_ID.REGION_ID.r.appspot.com
, jalankan perintah berikut:gcloud app browse
Selamat! Anda baru saja membuat dan men-deploy layanan di App Engine.
Layanan dan versi
Layanan pertama yang Anda deploy untuk aplikasi akan menjadi layanan default.
Anda dapat menentukan nama layanan di file app.yaml
, tetapi jika
nama dihilangkan, maka akan diperlakukan sebagai default
. Anda dapat men-deploy beberapa layanan
selain layanan default.
Anda dapat mengupdate layanan kapan saja dengan menjalankan perintah
gcloud app deploy
. Setiap kali Anda melakukan deployment, versi baru akan dibuat dan traffic
akan otomatis dirutekan ke versi terbaru.
Untuk mengonfirmasi pembuatan layanan dan deployment versi:
Lihat layanan App Engine Anda di konsol Google Cloud:
Anda akan melihat satu layanan tercantum yang bernama
default
. Layanan default dapat diakses secara publik di URL berikut:https://PROJECT_ID.REGION_ID.r.appspot.com
Lihat versi Anda:
Anda akan melihat satu versi yang tercantum dengan stempel waktu, sesuai dengan deployment Anda.
Untuk mempelajari cara mengirim permintaan ke layanan dan versi tertentu, baca Cara Permintaan Dirutekan.
Langkah berikutnya
Selamat! Anda baru saja menyiapkan dan men-deploy aplikasi web Anda ke App Engine.
Pelajari cara menambahkan fitur lain ke aplikasi dengan menjelajahi halaman berikut:
- Pelajari lebih lanjut cara menulis log aplikasi dan menafsirkan log sistem di Membaca dan Menulis Log Aplikasi.
- Untuk mempelajari lebih lanjut cara kerja App Engine, lihat Lingkungan Runtime Go.
- Baca penanganan permintaan dan pemilihan rute permintaan.