我刚刚注意到我的应用程序的存储空间开始显著增加。
仔细查看后,发现这是由于“artifacts”存储桶引起的。
我可以看到“artifacts”存储空间每周以大约800Mb的速度增长,这让我非常担心。
我猜想这与Firestore函数部署(或者不是?)有关,但这真的是预期的吗?我能够安全地清理这些构件吗?
感谢任何有关如何安全处理此情况下的存储空间大小并将其消耗最小化的建议。
我刚刚注意到我的应用程序的存储空间开始显著增加。
仔细查看后,发现这是由于“artifacts”存储桶引起的。
我可以看到“artifacts”存储空间每周以大约800Mb的速度增长,这让我非常担心。
我猜想这与Firestore函数部署(或者不是?)有关,但这真的是预期的吗?我能够安全地清理这些构件吗?
感谢任何有关如何安全处理此情况下的存储空间大小并将其消耗最小化的建议。
我找到了一个解决方案-似乎可以在Google Cloud Console中设置自动删除规则,以清理那些混杂在存储中的图像。
进入Google Cloud控制台,选择您的项目->存储->浏览器 https://console.cloud.google.com/storage/browser
选择“artifacts”桶
在“生命周期”选项卡下添加规则以自动删除旧图像(在我的情况下,我设置“更新后1天后删除”,这对我来说效果很好)
现在存储是安全的!
注意:如果您稍后遇到任何部署问题,例如连续几天部署并给出部署错误,则只需手动删除artifacts中的整个“container”文件夹即可解决问题,然后重新部署。(确保不要删除artifacts bucket本身!)
希望Firebase团队会改善这种情况-当前的行为看起来很令人困惑,因为它很容易导致意外的账单,除非您采取额外的措施来防止这种情况发生。但是在它确实发生之前,你永远不会知道。
functions
文件夹,不要把不必要的文件放在里面,因为我们不知道Google是否只会按依赖项或整个functions
文件夹上传文件。如果有人能确认,请随时完善此项。functions/package.json
、functions/node_modules
和JS文件的require
语句中删除不必要的依赖项,例如functions/index.js
。grunt
和uglify
NPM包来实现。同样,我们不确定Cloud Build(或任何Google函数部署系统)是否会在将它们存储到容器注册表或云存储之前自动压缩函数的图像(如果您有更好的答案,请完善此项)。firebase deploy --only functions
。