【问题标题】:Trigger a Cloud Run Build/Deploy with a remote Trigger/Webhookin Google Cloud使用远程触发器/Webhookin 触发 Cloud Run 构建/部署 Google Cloud
【发布时间】:2020-10-20 15:49:15
【问题描述】:

我目前连接了一个 NextJS 应用,我想迁移到 Google Cloud Run。

现在,大部分是静态生成的页面——在构建过程中next 对大多数页面进行静态生成和发现。这些页面通常一次不会更新数周。

在 Vercel 上托管它时,我能够将应用程序设置为在触发 webhook 时重新构建和部署。如果进行了副本更改,这允许网站重建并生成所有静态页面,而无需将内容推送到 Github 或按下按钮。

我们希望尽快将我们的大量工作转移到 GCP,并且我希望了解如何复制此功能。目前,我可以在 GCP Console 中设置的唯一触发器似乎是附加 repo 的推送/提交事件——仅此而已。

我不确定这是否可能? Azure 和 AWS 似乎都能够基于 webhook 设置触发器,但据我所知,GCP 中完全没有该功能。

我唯一能想到的就是设置一个云功能或为 CMS webhook 创建一个消费者,这将使提交和清空提交并推送它以触发重建——但我希望有 SOMETHING 比这更理智。

谢谢

【问题讨论】:

    标签: google-cloud-platform webhooks continuous-deployment google-cloud-run


    【解决方案1】:

    云运行比云功能灵活得多(而且成本更高,除非您可以同时运行它),并且您可以在本地测试您的微服务。

    您可以触发云运行:

    • 从 HTTPS 获取/发布(它将使用特殊的 URL)
    • 来自云构建。
    • 来自 pub/sub 消息(也可以通过 google 云存储通知生成 - 只需删除/更新/删除文件)。

    您可能会发现这很有用:

    1 - Codelab(谷歌云教程)Cloud Run Hello - 在 Cloud Run 中部署 NodeJS 应用程序。

    2 - 这篇 google 博客文章 Using Cloud Run as a Webhook for Actions 这是一个 Java 代码示例;但很好地说明了如何使用 Cloud Run。

    3 - 这可能与您的用例类似:Automatic Deployment of Hugo Sites on Firebase Hosting and Drafts on Cloud Run

    【讨论】:

    • 我认为有一个误解——你的第一个链接是关于制作一个云运行项目 INTO a Webhook,而第二个例子仍然只是使用谷歌的“推送到 github” " 触发器——这在这里没有帮助:/ 我试图弄清楚如何使用 webhook 或其他 non-git 外部操作在 Cloud Run 上开始重建/重新部署容器
    • 如果您使用 Cloud build,您可以通过 API 触发重建,而无需触及 repo。见cloud.google.com/cloud-build/docs/api/reference/rest/v1/…
    • 啊,我们走了!这就是我一直在寻找的。这非常有帮助,谢谢!
    猜你喜欢
    • 2018-03-27
    • 1970-01-01
    • 1970-01-01
    • 2022-07-22
    • 2016-01-14
    • 2021-02-21
    • 1970-01-01
    • 2021-02-04
    • 2022-08-19
    相关资源
    最近更新 更多