【问题标题】:Google App Engine - ModuleNotFoundError: No module named 'dlib'Google App Engine - ModuleNotFoundError:没有名为“dlib”的模块
【发布时间】:2021-07-05 10:45:58
【问题描述】:

我有一个使用“dlib”库的 Flask 应用程序。我正在尝试在 Google App Engine 上运行它,但一旦我尝试访问它就会失败。日志中的错误是“ModuleNotFoundError:没有名为“dlib”的模块。以前,我在 requirements.txt 文件中有“dlib”,但在部署应用程序时它总是失败,并出现与“CMAKE”相关的错误。然后我通过谷歌控制台手动安装了“dlib”。目前它位于“Location:/home/myusername/.local/lib/python3.7/site-packages”下。

当我尝试在 Google 控制台上本地运行该应用程序时,它工作得非常好,但使用 gcloud app deploy 命令却无法正常工作。我浪费了 2 天时间试图找出问题,但没有成功。任何帮助将不胜感激。

【问题讨论】:

  • 您使用的是 App Engine Flex 还是标准版?
  • @YeriPelona 弹性环境。

标签: python-3.x google-app-engine flask gunicorn dlib


【解决方案1】:

你可以看看这个similar question

总结:

  • 您可以在 Flexible 环境中使用非 Python 依赖项,通过 custom runtime:

自定义运行时允许您定义新的运行时环境,其中可能包括语言解释器或应用程序服务器等附加组件。

  • 如果要自定义环境,可以使用容器。有一些注意事项需要牢记:

  • Flex 不会扩展到 0,因此即使您的服务未被使用,您也需要付费。

  • 在这种情况下,解决方法可能是Cloud Run。它可以扩展到零并且按使用付费,而且功能强大。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-02-26
    • 2015-04-24
    • 2018-08-05
    • 1970-01-01
    • 1970-01-01
    • 2015-01-25
    • 2019-02-01
    • 2021-06-03
    相关资源
    最近更新 更多