python - 在 Google Cloud Platform 上部署 Flask 应用程序时出错
问题描述
当我尝试部署到谷歌应用引擎时出现此错误:错误:(gcloud.app.deploy)错误响应:[3]。这是我第一次在 GCP 上试用 Flask 应用程序,所以我不确定如何处理。
ERROR: (gcloud.app.deploy) Error Response: [3] The following errors occurred while copying files to App Engine:
File https://storage.googleapis.com/staging.<app_id>.appspot.com/02aad073e7e7b22302caeca9aa3d6aaf227d7d91 failed with: Conflicting SHA1 sum for file. Expected "e0962ea6_8c330ca4_d3fff179_b1f68032_ef476e8e" but received "02aad073_e7e7b223_02caeca9_aa3d6aaf_227d7d91".
Details: [
[
{
"@type": "type.googleapis.com/google.rpc.ResourceInfo",
"description": "Conflicting SHA1 sum for file. Expected \"e0962ea6_8c330ca4_d3fff179_b1f68032_ef476e8e\" but received \"02aad073_e7e7b223_02caeca9_aa3d6aaf_227d7d91\".",
"resourceName": "https://storage.googleapis.com/staging.<app_id>.appspot.com/02aad073e7e7b22302caeca9aa3d6aaf227d7d91",
"resourceType": "file"
}
]
]
对于 10 个具有完全相同描述的不同资源名称,总共有 10 个类似的错误。文件的 SHA1 和冲突是什么意思?我尝试删除暂存存储桶以删除与资源名称同名的临时文件(在本例中为 02aad073e7e7b22302caeca9aa3d6aaf227d7d9)导致错误,但这似乎不起作用。
解决方案
您有 2 个以相同名称上传的不同文件。
要确定这是否确实是您的部署或暂存存储桶的问题,请创建一个新的干净存储桶并使用该新存储桶作为暂存存储桶再次尝试部署:
$ gsutil mb gs://new-staging-bucket
$ gcloud app deploy --bucket gs://new-staging-bucket
如果您在使用干净的存储桶时遇到相同的错误,那么您在部署期间以某种方式上传了几个具有相同名称的不同文件。
如果使用干净的存储桶有效,那么问题在于您在部署期间使用的暂存存储桶。
推荐阅读
- python-3.x - Pandas 数据帧 timedelta 列以格式化人类可读
- ansible - 注册循环没有给出预期的输出 - Ansible
- keras - 为什么暗网模型到 keras 模型的转换会降低准确性
- angular - Angular Material 排序表 - 如何将标题文本右对齐?
- javascript - 使用 JavaScript 启动 Windows 10 设置?
- c - 仅使用 While 循环和 If 语句用 C 绘制 X
- javascript - 计算文本中特定标签的数量
- c# - Grpc.Core 更新到 2.23,System.MissingMethodException: Method not found: Void Grpc.Core.ClientBase`1..ctor(Grpc.Core.Channel)
- keras - 如何制作 N 个相同模型的副本并分别训练?
- c# - 默认情况下如何插入用户(客户端)条目?