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

如何在Cloud Run中实现跨项目域名映射(多项目部署场景)

跨GCP项目绑定Cloud Run服务到自定义域名

针对你这种DNS与Cloud Run服务分属不同项目的场景,核心是先完成域名所有权验证,再跨项目授权绑定服务,具体步骤如下:

1. 在DNS管理项目(项目A)完成域名所有权验证

因为你的域名区域在项目A,直接在此项目完成mydomain.com的所有权验证:

  • 切换到项目A的Google Cloud Console,进入Cloud Run > 自定义域名页面
  • 点击「添加映射」,输入任意一个待绑定的子域名(比如www.mydomain.com),系统会提示需验证域名所有权
  • 选择「DNS验证」方式,复制生成的TXT记录内容(格式类似google-site-verification=xxxxxx)
  • 回到项目A的Cloud DNS区域,给mydomain.com添加这条TXT记录
  • 等待5-10分钟让DNS生效,刷新Cloud Run页面确认所有权验证通过(验证一次后,该域名下所有子域名无需重复验证)

2. 绑定生产环境服务(项目C)到对应子域名

以www.mydomain.com绑定项目C的www-service为例:

  • 切换到项目C的Google Cloud Console,打开www-service的详情页
  • 进入自定义域名标签,点击「添加映射」
  • 输入www.mydomain.com,系统会检测到该域名已在项目A验证,此时需项目A管理员完成授权
  • 两种授权方式可选:
    • 方式一:项目A管理员登录Cloud Console,进入Cloud Run > 自定义域名,找到已验证的www.mydomain.com,点击「添加服务映射」,选择项目C的www-service,默认路径/*即可
    • 方式二:项目A管理员给项目C的Cloud Run服务账号添加Cloud Run 域名映射编辑器权限(服务账号格式为service-{项目C编号}@serverless-robot-prod.iam.gserviceaccount.com)
  • 绑定完成后,Cloud Run会生成一个目标域名(比如abcdef-uc.a.run.app)
  • 回到项目A的Cloud DNS区域,修改www.mydomain.com的CNAME记录值为这个生成的目标域名

重复上述步骤,将app.mydomain.com绑定到项目C的app-service。

3. 绑定预发布环境服务(项目B)到子域名

流程与生产环境一致:

  • 切换到项目B的Cloud Console,打开staging-service的详情页,进入自定义域名标签添加映射
  • 输入staging.mydomain.com,由项目A管理员完成授权或权限配置
  • 获取Cloud Run生成的目标域名,修改项目A中staging.mydomain.com的CNAME记录值为该目标域名

注意事项

  • 每个子域名只能绑定一个Cloud Run服务,避免重复绑定
  • DNS修改后可能需要10-30分钟全球生效,可通过nslookup或dig命令验证CNAME记录是否正确
  • 权限配置遵循最小权限原则,不要授予过宽的权限

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.19 22:20:27