【问题标题】:Separate URL for each git branch in Cloud RunCloud Run 中每个 git 分支的单独网址
【发布时间】:2019-12-01 14:26:32
【问题描述】:

我正在寻找 Cloud Run 来托管我的新应用程序,我想知道是否可以为每个 git 分支生成单独的 URL。 我使用 Netlify 来托管我的其他应用程序。当它连接到 GitHub(或其他 VCS 服务)时,它会在分支中构建源代码并将其部署到特定于分支的 URL。 是不是很容易做,还是要我写一些逻辑?

或者您认为 AWS amplify 或其他一些服务更适合?

【问题讨论】:

    标签: google-cloud-platform google-cloud-run


    【解决方案1】:

    Cloud Run 和 URL 的概念非常简单:

    https://<service-name>-<project hash>.<region>.run.app

    如果所有分支的项目和区域都相同,您只需为每个分支部署不同的服务即可获得不同的 URL。

    那是为 Cloud Run 准备的。现在,我不确定 Netlify 是否与 Cloud Run 兼容。我没有找到这方面的文档。

    【讨论】:

    • 完美!虽然 Netlify 会自动将 git branch 与端点 URL 关联起来,但同样的事情在 Cloud Run 上可以非常轻松地实现!
    【解决方案2】:

    这个答案不会对你直接有用,但我认为它是相关的,值得一提

    开源 Knative API(和实现实际上公开了一个“标签”功能,同时在多个修订版之间拆分流量:https://github.com/knative/docs/blob/master/docs/serving/spec/knative-api-specification-1.0.md#traffictarget

    完全托管的 Cloud Run 目前不支持此功能,但会支持。

    通过以这种方式标记发布,您可以在流量配置中定义 tag: v1tag: v2,您将获得新的 URL,例如:

    直接转到这些特定版本。

    有趣的是,您在 Service 对象的 traffic: 块中指定的这些修订版不必接收任何流量(您可以说流量 percentage: 0),但它仍会像我展示的那样创建一个域名以上到您应用的非活动版本。

    因此,当 Cloud Run 完全托管支持 tag 字段时,您实际上可以实现这一点,尽管它的开箱即用体验不如 Netlify。

    【讨论】:

      猜你喜欢
      • 2013-02-08
      • 2020-09-17
      • 2013-10-29
      • 2018-07-17
      • 1970-01-01
      • 1970-01-01
      • 2012-07-19
      • 1970-01-01
      • 2019-08-22
      相关资源
      最近更新 更多