# 本地端應用透過Google Cloud達到持續交付 --- # [Self Introduction](https://www.sql-fan9704.eu.org/) ![](https://i.imgur.com/4dRwss8.png) --- ## 持續交付 Continous Delivery > Continous Delivery = CI(Continous Integration) 持續整合+CD(Continous Deployment) 持續部屬 他們是在將撰寫完的程式流程自動化,前者負責整合的部分,後者負責部屬的部分。 --- ## 本次主角 Cloud Build (CI工具) ![](https://i.imgur.com/bxiQE1u.png) **特色** - 有免費額度 支援多種語言 - 可以整合很多其他GCP服務(今天與Cloud Run整合) - 使用yaml檔案設置 --- ### 實作環節 ---- > 節省時間 這裡有個專案大家嘗試一下 **記得Install [Google Cloud SDK](https://cloud.google.com/sdk)** ```bash= git clone git@gitlab.com:fan9704/flaskgcpcloudbuildtocloudrun.git #進入專案且設置Google Cloud Project cd flaskgcpcloudbuildtocloudrun # 初始化本專案成 Gcloud 專案 gcloud init ``` ---- ### 安裝套件 requirements.txt ![](https://i.imgur.com/LLNsw7M.png) ---- ### 簡單的API main.py ![](https://i.imgur.com/QrJAd4G.png) ---- ### 簡單的測試 main_test.py ![](https://i.imgur.com/tLJZdwC.png) ---- ### 都寫好了 包裝成Docker Image ![](https://i.imgur.com/Ia151ER.png) ---- ### OK Cloud Build CI/CD流水線建置起來 ![](https://i.imgur.com/hYwBZ7R.png) ---- ![](https://i.imgur.com/wnJIrta.png) ---- ### 好了就 build吧 ```bash= #丟上去 gcloud builds submit --config cloudbuild.yaml . ``` ---- ![](https://i.imgur.com/UL9xRJO.png) ---- ### GCP 頁面查看pipeline ![](https://i.imgur.com/5Z9UwU4.png) ---- ### Cloud Run Service 啟動成功 ![](https://i.imgur.com/3fTDQ71.png) ---- ### 實際應用程式 ![](https://i.imgur.com/dmZGjqk.png) --- ## Thanks Everyone > I am [FKT](https://www.linkedin.com/in/gang-ting-fan-95885920a/) > We are NYUST GDSC > [Discord Link](https://discord.gg/hKsXDm29TR) ![](https://i.imgur.com/mBhLMCp.png) ---- ## Error Artifact Registry沒建置起來 ```shell= #1. 專案帳單帳戶設置 #2. 沒有放docker image的artifact registry gcloud artifacts repositories create docker-repo --repository-format=docker --location=us-central1 --description="docker repository" #改一下cloud build yaml的artifact registry repo變成docker-repo #3. Cloud RUN API 沒開啟 #4. Artifact Registry API沒開啟 #5. Compute Engine API 沒開啟 #6. IAM Cloud Build帳號權限 Cloud Run Admin ```
{"metaMigratedAt":"2023-06-17T15:44:14.027Z","metaMigratedFrom":"YAML","title":"本地端應用透過Google Cloud達到持續交付","breaks":true,"contributors":"[{\"id\":\"4c8f8799-9dcd-430b-b7bc-8a5156d39d0b\",\"add\":2643,\"del\":578}]"}
    301 views