iT邦幫忙

2023 iThome 鐵人賽

DAY 20
0
IT管理

GCP 的 terraform 之旅系列 第 20

day20 Terraform GCP cloud build deploy cloud run

  • 分享至 

  • xImage
  •  

簡介

今天來跟大家介紹 GCP terraform 如何利用 cloud build 建置 github 內的 image 且推送到 Artifact Registry 存儲, 並且最終自動化發布成 cloud run

正文

我是參考以下文件

Deploying to Cloud Run  |  Cloud Run Documentation  |  Google Cloud

因為 cloud build 的程式碼(step) 是基於指令行的動作在運作, 所以這個問題變得很簡單, 只要查找想做的目標所需的 gcloud 指令, 按照支援的語法放進 terraform 裡即可

實測

clone 後進入專案該資料夾

code

在以上代碼插入以下指令即可

step {
      name = "gcr.io/cloud-builders/gcloud"
      args = ["run", "deploy", "${var.name}", "--image", "$_AR_HOSTNAME/$PROJECT_ID/$_REPO_NAME/$_SERVICE_NAME:$COMMIT_SHA", "--region", "${var.region}", "--platform", "managed", "--allow-unauthenticated"]
}

等價於指令

gcloud run deploy cloud-run-id —image image-in-artifact—registry —region asia-east-1 --platform managed --allow-unauthenticated

所以其實 cloud build 的撰寫不難, 只要把地端會下得指令搬上來即可

創建用 make start

釋放資源用 make destroy

💡 注意, 這個用 cloud build 創建的 cloud run 並沒有被 terraform 追蹤, 所以不是完整的實做, 用完記得要手動刪除


上一篇
day19 Terraform GCP cloud build push image to Registry
下一篇
day21 Terraform GCP cloud sql
系列文
GCP 的 terraform 之旅31
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言