You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Cloud Build YAML中自动配置Cloud Run修订版专属URL

自动为Cloud Run修订版生成专属URL(基于PR编号/Commit SHA)

核心思路

通过在Cloud Build的部署命令中添加--revision-suffix参数,结合Cloud Build自动注入的GitHub相关环境变量(PR编号、Commit SHA),为每个Cloud Run修订版生成带唯一标识的专属URL,无需手动配置。

修改Cloud Build YAML配置

根据你的触发场景(PR触发/代码推送触发),选择以下两种配置方式:

场景1:PR触发(用PR编号作为URL标识)

修改部署步骤,添加--revision-suffix参数指定PR编号作为后缀:

steps:
- name: 'gcr.io/google.com/cloudsdktool/cloud-sdk'
  args:
  - 'gcloud'
  - 'run'
  - 'deploy'
  - '你的Cloud Run服务名'
  - '--image'
  - 'gcr.io/$PROJECT_ID/你的镜像名:$COMMIT_SHA'
  - '--region'
  - '你的部署区域(如us-central1)'
  - '--revision-suffix'
  - 'pr-$_PR_NUMBER'
  - '--allow-unauthenticated' # 根据实际需求决定是否开启公开访问
  • $_PR_NUMBER是Cloud Build针对GitHub PR触发器自动注入的环境变量,对应当前PR的编号。
  • 部署后,修订版URL格式:https://<服务名>-pr-<PR编号>-<随机哈希>-<区域>.run.app

场景2:代码推送触发(用短Commit SHA作为URL标识)

通过Shell脚本截取Commit SHA的前7位作为后缀:

steps:
- name: 'gcr.io/google.com/cloudsdktool/cloud-sdk'
  entrypoint: 'bash'
  args:
  - '-c'
  - |
    # 截取Commit SHA前7位作为短标识
    SHORT_SHA=${COMMIT_SHA::7}
    # 部署Cloud Run服务并指定修订版后缀
    gcloud run deploy 你的Cloud Run服务名 \
      --image gcr.io/$PROJECT_ID/你的镜像名:$COMMIT_SHA \
      --region 你的部署区域 \
      --revision-suffix sha-$SHORT_SHA \
      --allow-unauthenticated
  • COMMIT_SHA是Cloud Build自动注入的完整提交哈希,前7位足够保证唯一性。
  • 部署后,修订版URL格式:https://<服务名>-sha-<短SHA>-<随机哈希>-<区域>.run.app

权限验证

确保Cloud Build使用的服务账号拥有roles/run.admin(Cloud Run管理员)角色,以及访问镜像仓库(如Artifact Registry)的必要权限。

验证部署结果

提交PR或推送代码触发Cloud Build后:

  1. 查看Cloud Build日志,确认部署命令执行成功。
  2. 进入Cloud Run控制台的「修订版」列表,找到对应修订版,检查其自动生成的URL是否包含指定的PR编号或短SHA标识。

内容的提问来源于stack exchange,提问作者Mustapha Khial

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 03:35:42