python-3.x - Google App Engine 部署错误 [12] 无法分配内存
问题描述
我的应用程序运行为 - Google App Engine 标准环境:Python 37
我使用 gcloud 部署我的应用程序,如下命令
gcloud app deploy --project [项目名称] --version uno
我的构建失败,因为以下错误
Step #1 - "builder": INFO gzip_tar_runtime_package took 18 seconds
Step #1 - "builder": INFO Finished gzipping tarfile.
Step #1 - "builder": INFO Building app layer took 47 seconds
Step #1 - "builder": INFO starting: Building app layer
Step #1 - "builder": INFO starting: tar_runtime_package
Step #1 - "builder": INFO tar_runtime_package tar -pcf /tmp/tmpyhSCMU.tar --hard-dereference --transform flags=r;s,^,/.googleconfig/, --exclude *.pyc .
Step #1 - "builder": INFO tar_runtime_package took 0 seconds
Step #1 - "builder": INFO Building app layer took 0 seconds
Step #1 - "builder": INFO build process for FTL image took 50 seconds
Step #1 - "builder": INFO full build took 50 seconds
Step #1 - "builder": ERROR tar_runtime_package tar -pcf /tmp/tmpyhSCMU.tar --hard-dereference --transform flags=r;s,^,/.googleconfig/, --exclude *.pyc .
Step #1 - "builder": exited with error [Errno 12] Cannot allocate memory
Step #1 - "builder": tar_runtime_package is likely not on the path
Step #1 - "builder": Traceback (most recent call last):
Step #1 - "builder": File "/usr/lib/python2.7/runpy.py", line 174, in _run_module_as_main
Step #1 - "builder": "__main__", fname, loader, pkg_name)
Step #1 - "builder": File "/usr/lib/python2.7/runpy.py", line 72, in _run_code
Step #1 - "builder": exec code in run_globals
Step #1 - "builder": File "/usr/local/bin/ftl.par/__main__.py", line 65, in <module>
Step #1 - "builder": File "/usr/local/bin/ftl.par/__main__.py", line 60, in main
Step #1 - "builder": File "/usr/local/bin/ftl.par/__main__/ftl/common/ftl_error.py", line 77, in InternalErrorHandler
Step #1 - "builder": IOError: [Errno 2] No such file or directory: '""/output'
更多信息
- 我的任务队列已经为空。
- 我尝试将我的实例类从 F1 扩大到 F2 和 F3,但它仍然失败。
解决方案
cannot allocate memory
如果要上传的文件数量或内容的大小太大并且用于部署代码的实例内存不足,则通常会出现该错误。
此错误的原因可能是您使用了太多依赖项或静态文件。
你在下载静态文件吗?tar_runtime_package tar
我在错误之前看到了这个命令。
我建议确保您只使用必要的依赖项或选择在 Google Cloud Run 上部署您的应用程序。