Firebase存储工件
我正在试图理解Firebase存储工件,firebase,firebase-storage,Firebase,Firebase Storage,我正在试图理解eu.artifacts.%PROJECT NAME%.appspot.com是什么。目前,它占用了我每天5gb的存储容量上限的800mb。它只包含应用程序/octet流类型的文件。此bucket是自动创建的,文件路径为eu.artifacts….appspot.com/containers/images。两个最重的文件重量分别高达200mb和130mb。我试图删除它,但它又被自动创建。用户可以在我的网站上上传图片,但这个存储桶目前只需要大约10mb的容量,其中包含了所有的用户图片
eu.artifacts.%PROJECT NAME%.appspot.com
是什么。目前,它占用了我每天5gb的存储容量上限的800mb。它只包含应用程序/octet流类型的文件。此bucket是自动创建的,文件路径为eu.artifacts….appspot.com/containers/images。两个最重的文件重量分别高达200mb和130mb。我试图删除它,但它又被自动创建。用户可以在我的网站上上传图片,但这个存储桶目前只需要大约10mb的容量,其中包含了所有的用户图片所以我的问题是:这个桶是干什么用的?为什么它这么重?这里是firebaser 如果您使用的是云函数,那么您看到的文件与最近构建运行时(对于节点10及更高版本)的方式的更改有关 云函数现在用于为云函数创建运行时(用于节点10及以上)。云构建反过来用来存储这些运行时,这些运行时将存储在项目下的新云存储桶中 有关此方面的更多信息,请参阅上Firebase定价常见问题解答中的此条目 也可以看到这些人工制品
这里是消防队 如果您使用的是云函数,那么您看到的文件与最近构建运行时(对于节点10及更高版本)的方式的更改有关 云函数现在用于为云函数创建运行时(用于节点10及以上)。云构建反过来用来存储这些运行时,这些运行时将存储在项目下的新云存储桶中 有关此方面的更多信息,请参阅上Firebase定价常见问题解答中的此条目 也可以看到这些人工制品
我已经咨询了GCP支持部门,以下是一些事情
- 云功能导致存储使用量激增
- 由于这些工件不存储在默认存储桶中,因此即使存储的总字节数未达到空闲层限制,它们也会向您收费
- 在下一步移除工件桶。据支持人员说
编辑201118:请参阅下面的评论,您可能需要保留bucket,同时删除其中的所有内容。我已经咨询了GCP支持部门,以下是一些事项
- 云功能导致存储使用量激增
- 由于这些工件不存储在默认存储桶中,因此即使存储的总字节数未达到空闲层限制,它们也会向您收费
- 在下一步移除工件桶。据支持人员说
编辑201118:请参阅下面的评论,您可能需要保留bucket,同时删除其中的所有内容。添加到@yo1995的响应中,您可以删除bucket中的工件,而无需进入GCP。待在Firebase,你去仓库,然后“添加一个桶”。从那里,您将看到导入gcp和工件存储桶的选项。接下来,您可以相应地删除bucket中的工件 根据收到的一些评论,重要的是不要删除bucket。相反,只删除bucket中的工件强>
添加到@yo1995的响应中,您可以删除bucket中的工件,而无需进入GCP。待在Firebase,你去仓库,然后“添加一个桶”。从那里,您将看到导入gcp和工件存储桶的选项。接下来,您可以相应地删除bucket中的工件 根据收到的一些评论,重要的是不要删除bucket。相反,只删除bucket中的工件强> 添加到@yo1995
我咨询了Firebase支持部门,他们确认不应删除artifacts bucket。基本上,这些工件用于帮助构建最终图像,以存储在“gcf源”存储桶中 直接引用它们
您可以自由删除“XX.artifacts”中的内容,但请保持bucket不变,它将在以下部署周期中使用 如果完全删除artifacts bucket,可能会出现一些意外行为。
此外,“团队正在努力自动清理此存储桶,但在发布解决方案之前,他们需要解决一些限制。” 目前,我将bucket设置为自动删除1天以前的文件。添加到@yo1995
我咨询了Firebase支持部门,他们确认不应删除artifacts bucket。基本上,这些工件用于帮助构建最终图像,以存储在“gcf源”存储桶中 直接引用它们
您可以自由删除“XX.artifacts”中的内容,但请保持bucket不变,它将在以下部署周期中使用 如果完全删除artifacts bucket,可能会出现一些意外行为。
此外,“团队正在努力自动清理此存储桶,但在发布解决方案之前,他们需要解决一些限制。” 目前,我将bucket设置为自动删除1天以前的文件。作为替代方案,您可以
admin.initializeApp(functions.config().firebase)
import * as functions from 'firebase-functions'
// define the app as a cloud function called APIv1 build xxxxxx
export const APIv1b20201202 = functions.https.onRequest(main)
...
"hosting": {
"public": "dist",
"ignore": ["firebase.json", "**/.*", "**/node_modules/**", "**/tests/**"],
"rewrites": [
{
"source": "/api/v1/**",
"function": "APIv1b2021202"
}
]
},
...
# Deploy new function called APIv11
$ firebase deploy --only functions:APIv11
# Wait until deployment is done; now both APIv11 and APIv10 are running
# Delete APIv10
$ firebase functions:delete APIv10
{
"lifecycle": {
"rule": [
{
"action": { "type": "Delete" },
"condition": {
"age": 21
}
}
]
}
}
gsutil lifecycle set ./firebase/storage_artifacts_lifecycle.json gs://us.artifacts.${MY_PROJECT_ID}.appspot.com
gsutil lifecycle get gs://us.artifacts.${MY_PROJECT_ID}.appspot.com
# finding images
gcloud container images list --repository=<your repository>
# getting metadata
gcloud container images list-tags <image name>
# deleting images
gcloud container images delete <image name>@<digest> --quiet --force-delete-tags