--- tags: dsc Author: uccu --- # 11/23-GCP實作 ## Overview 建立GCP專案,利用 Cloud SQL 建立雲端資料庫,並利用 App Engine 架設 Nodejs Web Server ## Setup 1. 進入 [GCP](https://console.cloud.google.com) 網站 2. 登入google帳號 3. 點擊免費試用建立帳號  ## 建立GCP專案 1. 點選上方選取專案 -> 新增專案  2. 輸入專案名稱後點擊建立  ## 建立MySQL server 1. 點擊 console 左上角 -> 下拉找到資料庫欄位 -> 點選SQL  2. 點選建立執行個體  3. 選擇 MYSQL  4. 輸入執行個體資訊 - 執行個體ID: sqlserver - 根密碼: <自己設定密碼> - 區域: asia-east1(台灣) - 分區: asia-east1-a - 資料庫版本: MYSQL 5.7  5. 點擊顯示設定選項  6. 下拉找到機器類型和儲存空間點擊並更改設定 - 機器類型點選變更 -> 選取 db-f1-micro - 儲存空間容量更改為10GB  7. 點選建立  8. 等待直到 MySQL server 建立完成 (需要幾分鐘的時間)  ## 建立SQL資料庫並開啟API 1. 在左側主要執行個體 -> 點選資料庫  2. 點選建立資料庫  3. 設定資料庫名稱為 webdb -> 點擊建立  4. 確認webdb資料庫建立成功  5. 點擊上方搜尋欄位 -> 輸入 Cloud SQL Admin API -> 找到 Cloud SQL Admin API 並按下確認  6. 點擊啟用  ## 利用Cloud Shell建立Table 1. 進入 [Cloud Shell Editor](https://shell.cloud.google.com/) 網站 2. 確認右上角編輯器與終端機皆已開啟  3. 點擊終端機開始輸入指令 4. 列出所有創建的 project -> 找到剛建立的 PROJECT_ID ```shell= gcloud projects list ```  5. 設定使用此 project ```shell= gcloud config set project <YOUR_PROJECT_ID> ```  6. 連線到剛建立的 SQL Server ```shell= gcloud sql connect sqlserver --user=root --quiet ```  7. 輸入密碼並按下確認  8. 列出所有資料庫 ```sql= show databases; ```  9. 切換使用資料庫為 webdb ```sql= use webdb; ```  10. 建立 table ```sql= CREATE TABLE `webdb`.`courses` ( `id` INT UNSIGNED NOT NULL AUTO_INCREMENT , `name` TEXT NOT NULL , `content` TEXT NOT NULL , `img` TEXT NOT NULL , PRIMARY KEY (`id`)) ENGINE = InnoDB; ```  11. 列出資料表欄位名稱 ```sql= describe courses; ```  12. 離開 SQL Server ```shell= quit ```  ## 建立App Engine並開啟API 1. 回到 GCP Console 頁面 2. 點擊 console 左上角 -> App Engine -> 資訊主頁  3. 點擊建立應用程式  4. Region 選擇 asia-east2 -> 點選建立應用程式  4. Language 選擇 Node.js -> 點選繼續  5. 點擊上方搜尋欄位 -> 輸入 App Engine Admin API -> 找到 App Engine Admin API 並按下確認  6. 點擊啟用  ## 部屬App Engine應用 1. 點擊 console 左上角 -> 下拉找到資料庫欄位 -> 點選SQL  2. 記下執行個體連線名稱  3. 回到 Cloud Shell Editor 介面 4. 點擊終端機輸入指令下載專案 ```shell= git clone https://github.com/uccuz/DSCNCU-NodeJSWeb.git ```  5. 點擊上方編輯器 DSCNCU-NodeJSWeb 資料夾 -> 開啟 app.yaml 檔案  6. 更改 app.yaml 檔案,內容如下 - env_variables: - INSTANCE_CONNECTION_NAME: <你的執行個體連線名稱> - DB_USER: root - DB_DATABASE: webdb - DB_PASS: <你設定的密碼> - beta_settings: - cloud_sql_instances: <你的執行個體連線名稱> - 修改完成後記得按下Ctrl + S 儲存  7. 點擊終端機輸入指令 8. 回到家目錄 ```shell= cd ``` 9. 變更目錄到專案位置 ```shell= cd DSCNCU-NodeJSWeb ``` 10. 部署App Engine應用 ```shell= gcloud app deploy ``` 11. 輸入y並按下 enter ,即可開始部屬 (需要幾分鐘的時間)  12. 部屬成功後,將網址複製到瀏覽器中並送出  13. 檢查網站是否正常運作,可以嘗試新增或刪除資料  ## 刪除專案 1. 回到 GCP Console 頁面 2. 選擇要刪除的專案 3. 點擊右上角 -> 專案設定  4. 點選關閉 5. 輸入專案ID後點選關閉 
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up