作者: | 来源:互联网 | 2023-08-12 17:56
我在尝试部署 Cloud Function 时看到此 Cloud Build 错误:
“第 2 步 - “分析器”:[31;1mERROR:[0m 初始化缓存失败:无法创建图像缓存:访问缓存图像“us.gcr.io/MY_PROJECT/gcf/us-central1/SOME_KEY/cache:latest” : 无法从映像“us.gcr.io/MY_PROJECT/gcf/us-central1/SOME_KEY/cache:latest”的配置文件中获取操作系统
我能够在本地构建和模拟云功能,但由于此错误而无法部署它。到目前为止,我能够很好地部署。我到处找,我找不到任何关于这个的讨论。有谁知道这里发生了什么?
更新:我 3 天前部署了一个新功能,现在我似乎无法为其部署更新。我犯了同样的错误。我相当确定这是由于我设置的生命周期规则来确保我不会继续存储函数的图像:Firebase 存储工件是巨大的并且不断增加。这个规则很重要,因为我不想为不必要的存储付费,但它似乎可能是我们问题的根源。谷歌的人可以调查一下吗?
回答
即使对于之前成功部署的代码,我也遇到了同样的错误。
一种解决方法是删除Container Registry 中失败的 Firebase 函数的 Docker 映像并重新部署这些函数。(将在部署时重新创建映像。)
该错误仍然偶尔发生,所以我怀疑这可能是 Firebase 部署过程中引入的错误。值得庆幸的是,每次出现错误时,上述解决方法都可以解决问题。
Nope, my existing functions have continued to be available even when the Docker images are deleted.
This solution worked for me. Just do not forget to delete both cache and worker images.