通过Cloud Run下载大文件时出现500内部服务器错误

伊戈尔·莫拉(Igor Moura)

为测试目的构建了一个包含30GB以上的单个文件的巨大映像后,将映像部署到Cloud Run中之后,我无法下载相同的文件。

只需说明一下,该映像确实可以构建并在Cloud Run上运行,但是由于某些原因,特定的大文件不可用。

这是一个示例Dockerfile来重现此错误:

FROM python:3
WORKDIR /app
RUN touch test # downloading this file works fine
RUN dd if=/dev/urandom of=file bs=1M count=32768 # this one takes a while to build and to deploy, and won't be downloadable later on.
EXPOSE 8080
CMD python -m http.server 8080 --bind 0.0.0.0

尝试通过wget下载文件将返回以下内容:

wget https://cloud-run-link-here.app/file
--2020-03-03 17:19:16--  https://cloud-run-link-here.app/file
Loaded CA certificate '/etc/ssl/certs/ca-certificates.crt'
Resolving cloud-run-link-here.app (bigdocker-7k3mrt42la-uc.a.run.app)... :::::0, 0.0.0.0
Connecting to cloud-run-link-here.app (cloud-run-link-here.app)|:::::0|:443... connected.
HTTP request sent, awaiting response... 500 Internal Server Error
2020-03-03 17:19:17 ERROR 500: Internal Server Error.

在本地进行相同的操作就可以了。

如下面的图片所示,Cloud Run的日志上没有有用的信息。 云运行日志

达斯汀·英格拉姆

Cloud Run最大响应大小为32MB不建议将Python标准库中的HTTP服务器用于生产它很可能没有试图将非常大的请求分块并失败。

您应该考虑使用生产HTTP服务器(例如gunicorn)来代替。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

无法通过$ http.post方法发送数据,出现500个内部服务器错误

通过Twine将py文件上传到代理服务器时出现SSL错误

通过php在mysql数据库中插入大量数据时出现服务器错误500

通过Ubuntu Wine下载Windows Steam游戏时,出现错误“内容服务器无法访问”

通过慢速网络下载大文件时出现StorageException

Google Cloud Storage 500内部服务器错误'Google :: Cloud :: Storage :: SignedUrlUnavailable'

通过Node / Express服务器将大文件(2GB +)流式传输到Google Cloud Storage存储桶

尝试使用 Pgadmin 连接到 Google Cloud Platform 上的 postgres 容器时出现内部服务器错误

500内部服务器错误-通过Wordpress管理面板进行的任何上传

通过google-kubernetes-engine部署:内部服务器错误[500](Google云平台)

通过docusign API在我的服务器上下载签名文档的副本时出现问题

尝试在远程服务器上使用C#通过FTP上传文件时出现550错误

通过Guzzle将文件发布到Web服务器时出现HTTP 417错误(预期失败)

从 AjaxFileUpload 下载时出现服务器错误 500

Ajax 提交时出现 500 内部服务器错误

Google Cloud Storage JSON API:批处理删除返回未知错误(500内部服务器错误)

通过脚本从文件服务器下载文件

从Apache 2.4.28服务器上下载时,Gzip文件已损坏。通过FTP / SZ精细

IIS在提供PHP文件时出现500个内部服务器错误

通过API更改图表字体名称时发生内部服务器错误

通过网站从PHP服务器下载文件

如何通过javascript从tomcat服务器下载文件?

如何通过SSH服务器下载文件?

尝试通过 Angular 8 访问时出现身份服务器 4 CORS 错误

运行WOWZA流媒体服务器和WEBRTC时出现错误[通过firefox]

使用 kotlin 通过改造向烧瓶服务器发送数据时出现 400 http 错误

Django不通过电子邮件报告内部服务器错误(HTTP状态码500)

尝试通过 Web api 调用下载文件时,如何解决“发送 HTTP 标头后服务器无法设置状态”错误?

通过AJAX的ASMX调用返回内部服务器错误