如何将持久存储挂载到 Google Cloud Run?

vzu*_*urd 6 google-cloud-platform google-cloud-run

我试图使用 Cloud run 运行 Docker 映像,并意识到没有添加持久存储的选项。我在https://cloud.google.com/run/docs/using-gcp-services#connecting_to_services_in_code 中找到了一个服务列表,但它们都是从代码访问的。我希望与持久存储共享卷。有办法解决吗?是因为持久存储可能无法同时在多个实例之间共享吗?是否有替代解决方案?

Mai*_*uiz 10

现在应该可以在(完全托管的) Cloud Run中拥有持久存储。Cloud Run的第二代执行环境( gen2)支持网络挂载文件系统

以下是一些替代方案:

  1. Cloud Run + GCS将 Cloud Storage FUSE 与 Cloud Run 教程结合使用
  2. Cloud Run + Filestore将 Filestore 与 Cloud Run 结合使用教程

如果您需要帮助在这些之间做出决定,请检查以下内容:

注意:在回答此问题时,Cloud Run gen2 处于预览状态。


mar*_*doi 8

Cloud Run 是无服务器的:它抽象了所有基础设施管理。

也是一个托管计算平台,可以自动扩展您的无状态容器。

文件系统访问容器的文件系统是可写的,并受以下行为的约束:

这是一个内存文件系统,因此写入它使用容器实例的内存。当容器实例停止时,写入文件系统的数据不会持久化。

如果您的应用程序是有状态的,您可以使用 Google Cloud Storage、Firestore 或 Cloud SQL 。

使用 Cloud Run 实现持久存储的 3 个绝佳选择

Google Cloud Run 的默认存储空间是多少?


Don*_*ndi 5

Cloud Run(完全托管)具有尚不支持的已知服务,包括也是持久存储的 Filestore。不过,您可以考虑在 GKE 上运行的 Cloud Run Anthos 上运行 Docker 映像,并且您可以在其中使用通常由 Compute Engine 永久性磁盘支持的永久性卷。