【问题标题】:How to mount a bucket in a Google Run application?如何在 Google Run 应用程序中挂载存储桶?
【发布时间】:2019-11-21 16:32:58
【问题描述】:

我的最终目标是在容器中安装一个存储桶,以便使用 google run 进行部署。

为了挂载存储桶,我正在使用需要特权容器的 gcsfuse。 (https://github.com/maciekrb/gcs-fuse-sample et.al...)

我会使用虚拟机:

gcloud compute instances create-with-container \
    [...] \
    --container-privileged

使用 google 运行时:

gcloud beta run deploy [...] 

但是好像没有这个选项。

任何提示将不胜感激。

【问题讨论】:

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


    【解决方案1】:

    “支持”的答案和 cmets 中有几个不精确的定义。获得支持,也许不是。作品?是的。谷歌提供的教程?是的。 gsfuse 是一种方法。它是 Pre-GA:https://cloud.google.com/run/docs/tutorials/network-filesystems-fuse

    我还使用安装在没有不良副作用的容器中的 gsutils,这与某些 cmets 不同。当有人问“有什么办法……?”并且响应“不支持”,这意味着它不是一种可行的方式,但实际上它确实有效。运行实例的生命周期是最大的问题。但是挂载的 gsfuse 挂载应该在入口点脚本中完成,这样才能生存并保持可用。

    【讨论】:

      【解决方案2】:

      这是您使用 Google Run 产品无法做到的。相反,您需要使用 Google App Engine Flex,它没有像 Google App Engine 或 Google Cloud Functions 那样的超时。您还应该使用 Google Storage blob 访问函数来访问文件。

      【讨论】:

        【解决方案3】:

        我的最终目标是在要部署的容器内安装一个存储桶 用谷歌运行。

        Cloud Run 不支持您尝试执行的操作。

        Cloud Run 有一些规则(还有更多):

        1. 容器从对它的第一个 HTTP 请求开始运行。
        2. 容器可以在最后一个 HTTP 请求返回后终止。
        3. Cloud Run 容器是无状态的。
        4. Cloud Run 不支持后台进程。

        要在 Cloud Run 中使用 gcs-fuse,需要创建独立于容器状态运行的 TCP 连接。当 Cloud Run 使容器进入睡眠状态时,您的连接将失败。

        【讨论】:

        • 感谢您的帮助。因此,在文件系统(而不是 db)上使用预先存在的数据集的唯一方法是像这样安装永久磁盘:cloud.google.com/filestore/docs/accessing-fileshares 或使用像这样的 Google 云文件存储:github.com/kubernetes-sigs/gcp-filestore-csi-driver。我错了吗?
        • Cloud Run 也不支持。
        • 那么没有办法使用未存储在数据库中的数据?
        • 完全正确,我会挂载存储桶以便将输出写入同一个位置。现在愚蠢的问题是:我可以只编写文件然后将其推送到存储桶上(只需执行 gsutils cp filename gs://bucket-name)吗?
        • 如果没有大量工作,您将无法使用gsutils。这将需要一个带有很多额外东西(臃肿)的容器。相反,使用 Cloud SDK 并编写代码来与 Cloud Storage 交互,这很容易。请记住,Cloud Run 容器中没有 CLI。大多数 Cloud Run 容器不包含 bash 等 shell。不要将 Cloud Run 视为操作系统。
        猜你喜欢
        • 2016-06-28
        • 2022-01-21
        • 2011-08-14
        • 2021-01-21
        • 1970-01-01
        • 1970-01-01
        • 2018-05-08
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多