# GCP(Google Cloud Platform) - GAE(Google App Engine) ## 基本介紹 - [Google Cloud免費計畫](https://cloud.google.com/free/docs/gcp-free-tier?hl=zh-TW#free-tier-usage-limits) - [GCP全球據點代號](https://cloud.google.com/about/locations?hl=zh-tw#asia-pacific) - [Python 3快速入門導覽課程](https://cloud.google.com/appengine/docs/standard/python3/quickstart?hl=zh-TW) - [Specifying Dependencies](https://cloud.google.com/appengine/docs/standard/python3/specifying-dependencies) ## 開始使用 1. [建立Google帳號](https://accounts.google.com/SignUp?hl=zh-TW) 或 [登入Google帳號](https://accounts.google.com/Login?hl=zh-TW) 2. 進入 [GCP控制台首頁](https://console.cloud.google.com/projectselector2/home/dashboard?hl=zh-TW&_ga=2.186197993.1307742647.1609489748-2088114763.1609489748) ## 建立App Engine專案 ### 一、建立帳單帳戶 下面會以「個人」的名義來建立專案。 #### Google聲明: --- #### 使用所有 Cloud Platform 產品 取得建構及執行應用程式、網站和服務所需的一切資源,包括 Firebase 和 Google Maps API。 #### 免費獲得價值 $300 美元的抵免額 讓您試用 Google Cloud,並獲得價值 $300 美元的抵免額,供您在未來 90 天內使用。 #### 免費試用期結束後不會自動向您收費 我們之所以要求您提供信用卡資訊,是為了確保您不是自動化程式。除非您手動升級至付費帳戶,否則我們不會向您收費。 --- #### 國家/地區 台灣 #### 帳戶類型 個人 #### 稅務資訊 如果只是個人使用且並沒有跟財政部申請過稅籍,那就是選「未登記稅籍」就可以了。 > [Google:輸入或變更加值稅編號 (統一編號) 和稅籍](https://support.google.com/a/answer/7437651?hl=zh-Hant) #### 名稱和地址 「郵遞區號」、「地址」、和「姓名」是必填欄位。 > 備註: > > 郵遞區號和地址會檢查是否匹配。 #### 付款方式 信用卡卡號是必填資訊 > 備註: > > 信用卡擁有者可以和使用者不同姓名。 ## 二、進入Cloud Shell 從GCP控制台工作列右上方的點擊進入。 > 補充: > > 或是安裝本地端的[Google Cloud SDK](#安裝Google Cloud SDK) ## 三、編寫app.yaml檔案 要部署到App Engine都必須提供app.yaml格式檔案,App Engine會利用 YAML檔案內所指定部署作業的設定。 檔案包含應用程式的相關資訊,例如執行階段環境、環境變數等等。 > 補充:[Google官方app.yaml說明](https://cloud.google.com/appengine/docs/standard/python3/config/appref?hl=zh-TW) #### Python範例 ``` # Python版本 runtime: python38 # 設定執行個體,如果沒有這行,則預設F1 instance_class: F1 # 快取時間,0 = 不快取 default_expiration: 0 # 環境變數 env_variables: BUCKET_NAME: "example-gcs-bucket" handlers: # 將根目錄轉導到index.html - url: /test static_files: index.html upload: index.html # 將其他位址都轉導到Python程式 - url: /.* secure: always script: auto ``` #### Go範例 ``` runtime: go114 # 指定主程式所在目錄 main: ./src/cmd/collector ``` ### 四、requirements.txt Python需要提供這個檔案來指定需要額外安裝的模組,例如: ``` uwsgi==2.0.19.1 flask==1.1.2 requests pytz ``` ### 五、部署建立應用程式 ### 準備 1. Python主程式必須名為:**main.py** 2. Python的外部模組必須設定在:**requirements.txt** 3. 部署用的設定檔:**app.yaml** #### 建立應用程式 如要部署應用程式,您必須先在某個區域中建立應用程式: ``` $ gcloud app create ``` #### 部署 您可以使用 Cloud Shell 部署應用程式。如要部署應用程式,請輸入下列指令: ``` $ gcloud app deploy ``` #### 取得網已經上線的網頁服務清單 ``` $ gcloud app browse ``` > 補充: > > 預設網址為 appspot.com 上的子網域,網址開頭為專案ID名稱。 #### 切換專案 ``` $ gcloud config set project [PROJECT_ID] ``` #### 看log ``` $ gcloud app logs tail -s default ``` > 提示: > > 即為可以觀看透過`print()`方法輸出的文字。 #### describe取得app資訊 ``` $ gcloud app describe ``` ## 其它 ### 安裝Google Cloud SDK #### Step 1: 下載:[Google Cloud SDK](https://cloud.google.com/sdk/docs/quickstart?hl=zh-TW) #### Step 2: **MacOS:**解壓縮後將整個`google-cloud-sdk`搬移到任意想存放的地方,並執行目錄下的`install.sh`腳本來設定環境變數(選用)。 **Windows:**執行exe安裝檔後完成安裝。 > 注意: > > Windows安裝程式的最後請確認下面兩個選項丟被打勾: > > - Start Google Cloud SDK Shell > - Run 'gcloud init' #### Step 3: **MacOS:**執行`./google-cloud-sdk/bin/gcloud init`進行初始化Cloud SDK。 **Windows:**在上一步驟的最後,如果有勾選`Run 'gcloud init`,'安裝程式會開啟終端機畫面並進行初始化。 > 補充: > > 更詳細資訊可參考[Cloud SDK說明文件](https://cloud.google.com/sdk/docs/quickstart?hl=zh-TW) ### 刪除應用程式 如果專案不使用了,可以刪除專案來釋放相關資源,以免不小心被Google收費。 [前往管理資源](https://console.cloud.google.com/iam-admin/projects?hl=zh-TW)
×
Sign in
Email
Password
Forgot password
or
Sign in via Google
Sign in via Facebook
Sign in via X(Twitter)
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
Continue with a different method
New to HackMD?
Sign up
By signing in, you agree to our
terms of service
.