【问题标题】:Cloud Run - Custom Domain Mapping with Wildcard SubdomainCloud Run - 使用通配符子域的自定义域映射
【发布时间】:2021-03-12 23:41:47
【问题描述】:

我们的应用使用 customerA.mydomain.comcustomerB.mydomain.com 等子域,其中子域是由我们的客户“创建”的唯一可公开访问的店面。我们希望将所有 *.mydomain.com 路由到特定的 Cloud Run 服务。我们已经在 DNS 记录中设置了通配符子域 CNAME 来路由到 ghs.googlehosted.com.,但是如何让 Cloud Run 接受来自任何子域的请求呢?

【问题讨论】:

    标签: google-cloud-run


    【解决方案1】:

    您需要使用 API 或 gcloud 命令将每个子域映射到服务。例如:

    gcloud run domain-mappings create --service=myapp  --domain=www.example.com
    

    从技术上讲,这是因为每项服务都带有预配置的 HTTP SSL 证书(内置并为您提供开箱即用的免费证书),并且 Google 没有为您的域颁发wildcard certificate。这就是为什么您不能将 *(star) 映射到服务的原因。这意味着您需要指示 GCP Cloud Run 服务为您的每个子域映射和发出证书请求。

    也请联系您的客户经理,因为 Cloud Run 存在其他限制,例如:

    最大 SSL 证书数量:每个顶级域每周 50 个

    【讨论】:

    • 谢谢,但这也意味着我们必须等待 Cloud Run 提供证书,这样用户将无法在创建帐户后立即访问他们的店面。经过一番研究,有人提到 Cloud Run for Anthos 是一种可能的解决方案?
    • @arao6 你找到解决方案了吗?我目前正在研究完全相同的问题。
    • 他们将能够立即通过临时 URL 访问店面,并且在配置证书后,您可以通知他们他们的最终 URL。
    • @Andreas 不,我们最终配置了一个充当 Cloud Run 反向代理的 VM。服务器将根据子域附加一个标头。这方面有很多教程。或者,您可以免费使用带有 Let's Encrypt 的 VM,但您需要每 3 个月手动更新一次证书
    • 您能否更具体地了解您的解决方案?我正在尝试做同样的事情,但除了脚本来自动化域映射之外,我找不到任何关于此的教程。你在使用负载均衡器吗?您是否提供自我管理的通配符证书?您指的VM是Compute Engine实例?你能提供关键字来搜索这些教程吗?我是 GCP 网络的新手,我有点迷路了。
    猜你喜欢
    • 2022-08-15
    • 2012-10-31
    • 1970-01-01
    • 2021-02-03
    • 2017-05-10
    • 2022-07-22
    • 1970-01-01
    • 2020-01-07
    • 1970-01-01
    相关资源
    最近更新 更多