【问题标题】:How to access a private git repo in cloud run build如何在云运行构建中访问私有 git 存储库
【发布时间】:2021-11-16 14:50:42
【问题描述】:

我有一个带有私有 git 存储库作为依赖项的 python Cloud Run 容器。我在 Cloud Build 中找到了有关如何使用私有存储库的文档,但尚未找到在 Cloud Run 容器中执行相同操作的最佳实践。

编辑:cmets 中要求的额外信息。

容器在构建时使用私有 git 存储库作为来自 requirements.txt 的依赖项。

【问题讨论】:

  • 请详细说明用例。您的 Web 容器在构建时或运行时使用私有 git 存储库?您链接的指南也适用于 Cloud Run 运行时。您将密钥存储在 Secret Manager 中,您的应用程序提取密钥并运行 git 操作。技术上的上下文是相同的,这篇文章也可以 1:1 应用于您在 Cloud Run 上的问题。
  • @Pentium10 根据您的要求添加了更多信息。
  • 您是否尝试过您链接的教程?你有什么错误?就是这样。
  • 如何使用“云运行构建”进行构建?您是否使用命令 gcloud run deploy --source=. ... 并让 Cloud Run 为您构建容器?
  • 您需要根据您链接的教程切换到 Cloud Build 并使用 YAML 文件步骤运行 gcloud builds submit

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


【解决方案1】:

在 Cloud Run 容器中使用私有代码库的最佳做法是什么?

您在 Cloud Build also applies to Cloud Run 中分享了关于如何使用私有存储库的 guide,您可以像关注 Cloud Run 一样关注它。 您可以在cloudbuild.yaml file 的步骤中自定义身份验证。如果你想保证你的凭证安全,你要做的就是将你的私有 SSH 密钥存储在 Secret Manager 中,你的应用程序将提取密钥并验证 git 以运行该操作。

使用 github 操作时是否有简化流程?

一个简化的流程是将您的 Github 存储库与您的 Google Cloud 项目 CLoud Build 链接起来,这样做您将能够在您的项目中拥有一个镜像,并且您将在运行构建后立即获得源代码。由于 Github 存储库已经链接,您不需要任何身份验证步骤,但这仅在构建它的存储库是您的私有存储库之一时才有效,如果从依赖项调用私有存储库,它将不起作用。


创建此答案是为了使 cmets 中给出的解决方案对社区更加可见。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-11-02
    • 2019-01-24
    • 2017-12-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-12-15
    相关资源
    最近更新 更多