Hello GAE Standard Part 1:

啟用 Google App Engine

文/Bear Su|編輯/Jessie

Hello GAE Standard Part 1:

啟用 Google App Engine

文/Bear Su|編輯/Jessie

本篇文章僅適用於 GAE Standard Environment

Google App Engine [1](下方簡稱 GAE)是 GCP 上一個 Serverless 的服務,是一款操作方便以及能依需求自動調配資源的建置平台,是建置 App 絕佳助手,只需要執行指令部署自己的程式碼,其餘所需的運算資源都由 GCP 去維護,就連世界級手遊 PokemonGo、AngryBirds、Snapchat 都是愛好者。

為了更快上手 GAE ,本文將教學 GAE 啟用、停用、以及部署 Hello World 方法,需要特別注意是 GAE 一旦啟用後就無法刪除,只能停用或是刪除整個專案。以下為步驟拆解⋯⋯

如何啟用 GAE?

1. 在左側選單中選擇「App Engine」

建立新的專案或使用既有專案

2. 點開左側區塊「Select a language」

3. 選擇程式語言,本文使用 Golang

(選擇語言只會影響後面的 tutorial,如果打算略過 tutorial,選擇哪個都一樣)

4. 選擇 GAE 啟用的地區

目前不是所有地區(Region)都可以啟用 GAE,所以本文選擇離台灣最近的地區 – 日本[2];一旦選好地區後就無法修改,若需更改地區只能直接建立新專案。

等待初始化

5. 初始化完成後出現 tutorial

依需求來決定是否繼續照著 tutorial 實作 (本文略過);重新整理頁面後會出現如以下完整的管理畫面:

如何部署 Hello World?

本文將使用 gcloud SDK 部署程式碼到 GAE 上,所以必須先安裝 gcloud SDK[3]

1. 取得 hello world 程式碼

用 git 指令從 GitHub 取得 hello_gao 專案的程式碼,並執行指令切換到 hello-world 分支

$ git clone git@github.com:CloudMile/hello_gae.git
$ git checkout origin hello-world

 

2. 設定 gcloud config

設定 gcloud 指令執行時的預設參數,避免每次執行指令時都要指名專案 ID (顯示於專案首頁),有效減少輸入字數與錯誤。

請將以下指令中 改成你的專案 ID 再執行。

$ gcloud config set project <YOUR_PROJECT_ID>

 

3. 部署專案

請將以下指令中改成任意版本號再執行 (範例為 20180312t170057)

$ gcloud app deploy --version=<YOUR_VERSION>

執行後會顯示以下確認資訊:

Services to deploy:

descriptor:      [/<PROJECT_PATH>/app.yaml]
source:          [/<PROJECT_PATH>]
target project:  [<YOUR_PROJECT_ID>]
target service:  [default]
target version:  [20180312t170057]
target url:      [https://<YOUR_PROJECT_ID>.appspot.com]
  • target service : 預設為 default,但可以在 app.yaml 調整
  • 在同一個 GAE 上可以同時部署多個程式碼專案,透過 service 來切分:
    • default => https://.appspot.com
    • test => https://test-dot-.appspot.com
  • target version : 可以在指令內加入 –version=,來指明部署的版本

 

4. 瀏覽服務頁面

部署完成後可以用以下指令瀏覽  GAE 專案網址:

$ gcloud app browse

 

如何停用 GAE?

GAE 一但啟用後就不能刪除,只能停用;停用後,執行個體會全部停止,直到下次啟用前都不會收費。

1. 於 App Engine 左側選單,點擊「設定/Setting」,點擊「停用應用程式/Disable application」

2. 停用後會出現以下提示訊息

此外,在 GAE 上部署程式碼也會在 Google Cloud Storage (GCS) 上存放一份同一版本的程式碼,這部分會收取 Google Cloud Storage 儲存空間的費用,如果確定不需要可自行到管理頁面刪除程式碼。

參考連結

更多手把手教學文

About CloudMile

CloudMile 成立於 2016 年,致力於 B2B 雲端與人工智慧應用,為客戶建立國際級雲端架構,並以機器學習及大數據分析技術為核心,協助企業進行商業預測與產業升級。

Website: https://www.mile.cloud/
Facebook: https://www.facebook.com/CloudMileFans/
Linkedin: https://www.linkedin.com/company/cloudmile/
Youtube: https://www.youtube.com/c/CloudMile
Contact Us: service@mile.cloud