Google 在没有我的干预的情况下创建了一个存储桶

问题描述

我正在检查我在 Google Cloud 上的基础设施点以删除任何丢失点...

然后我注意到谷歌云存储有 5 个存储桶 [即使我刚刚创建了其中的 2 个]
这5个桶是: 1 - 我创建的存储桶
2 - 我创建的存储桶
3 - PROJECT.backups
4 - gcf-sources-CODE-us-central1
5 - us.artifacts.PROJECT.appspot.com

我知道备份存储桶来自 firebase 实时数据库备份,而源存储桶来自 firebase 云函数代码。但是工件桶来自哪里?单独这个桶的大小是所有其他桶的两倍。

它的内容只是名为“sha256:HASH”的二进制文件,其中一些文件大于 200MB

删除了这个存储桶,第二天又重新创建了它[无需我的交互]。

有谁知道可能会使用它吗?我怎样才能追踪到它?它有什么用?

解决方法

us.artifacts.<project id>.appspot.com 存储桶由 Cloud Build 创建和使用,用于存储 Cloud Build 服务生成的容器映像。在此存储桶中生成对象的进程之一是 Cloud Function,您可以实现这一点,因为您第一次创建函数时,GCP 会要求您启用 Cloud Build API,并且此存储桶会出现在 Cloud Storage 部分。 App Engine 还会在您每次部署应用的新版本时将对象存储在此存储桶中。

正如文档中提到的,在 App Engine 的情况下,一旦部署完成,us.artifacts.<project id>.appspot.com 存储桶中的图像不再需要,因此可以安全地删除它们。但是,如果您仅使用 Cloud Functions,则不建议删除此存储桶中的对象。虽然您现在没有遇到问题,但有可能您将来会遇到这些问题,因此您可以每隔一段时间使用 Lifecycle Object Management 删除此存储区中的对象,而不是手动删除所有对象时间,例如,每 7 天。您可以通过导航到 us.artifacts.<project id>.appspot.com 存储桶的生命周期选项卡并添加新的生命周期规则来do it,以删除存在时间超过 X 天的对象。

,

这是您的 docker 注册表。每次您推送(通过 docker push 或使用 Cloud Build 服务)时,GCP 都会在这些存储桶中存储图像层。