可以在 Google Cloud Run 中部署或使用多个容器作为一项服务吗?

Moh*_*mad 8 deployment containers google-cloud-run

我正在按照官方说明测试 Google Cloud Run:

https://cloud.google.com/run/docs/quickstarts/build-and-deploy

是否可以在 Google Cloud Run 中部署或使用多个容器作为一项服务?例如:DB服务器容器、Web服务器容器等。

gui*_*ere 6

简短回答 否。您无法在同一个服务上部署多个容器(就像在 K8S 上部署 Pod 一样)。

但是,您可以在同一个容器上并行运行多个二进制文件-> 本文由在 Cloud Run 上工作的 Google 员工撰写。

此外,请记住

  • Cloud Run 是一款无服务器产品。它可以根据需要缩放(至 0)(但尤其是根据流量)。如果启动持续时间很长并且创建了服务的新实例,则查询将需要一些时间才能提供(并且您的使用将等待)
  • 按使用量付费,我的意思是,只有在处理 HTTP 请求时才需要付费。在处理周期外,分配给实例的 CPU 接近于 0。
    • 这意味着 Cloud Run 提供处理 HTTP 请求的容器。您无法在后台对任何 HTTP 请求运行批处理。
  • Cloud Run 是无状态的。您有一个临时且在内存中可写的目录 ( /tmp),但是当实例出现故障时,所有数据都会出现故障。您无法运行存储数据的数据库服务器容器。您可以与外部服务(Cloud SQL、Cloud Storage...)交互,但仅在本地存储临时文件

编辑1

事情随着时间的推移而改变......写这篇文章的googler现在是Xoogler(前Googler),并且Cloud Run中现在存在sidecar功能

  • 这已经过时了,因为 Cloud Run 现在提供多容器服务:) (2认同)