【问题标题】:Workaround to install cmake on GCP App Engine Standard Environment在 GCP App Engine 标准环境中安装 cmake 的解决方法
【发布时间】:2021-01-01 23:21:20
【问题描述】:

对于需要 cmake 的应用程序,我需要在 App Engine Standard 上安装 dlib 软件包。以下是我在安装时遇到的错误。

我尝试在 requirements.txt 中添加 cmake 和 cmake-setup 但没有用。

ERROR: Failed to build one or more wheels
  ERROR: Failed building wheel for dlib
  ----------------------------------------
  
  *******************************************************************
   CMake must be installed to build the following extensions: _dlib_pybind11
  *******************************************************************
  RuntimeError:
      "\n*******************************************************************\n")
 File "/tmp/pip-wheel-hz_z90ap/dlib/setup.py", line 125, in get_cmake_version
      cmake_version = self.get_cmake_version()
    File "/tmp/pip-wheel-hz_z90ap/dlib/setup.py", line 129, in run
      cmd_obj.run()
    File "/opt/python3.7/lib/python3.7/distutils/dist.py", line 985, in run_command
      self.distribution.run_command(command)
    File "/opt/python3.7/lib/python3.7/distutils/cmd.py", line 313, in run_command
      self.run_command(cmd_name)
    File "/opt/python3.7/lib/python3.7/distutils/command/build.py", line 135, in run
      cmd_obj.run()
    File "/opt/python3.7/lib/python3.7/distutils/dist.py", line 985, in run_command
      self.distribution.run_command(command)
    File "/opt/python3.7/lib/python3.7/distutils/cmd.py", line 313, in run_command
      self.run_command('build')
    File "/env/lib/python3.7/site-packages/wheel/bdist_wheel.py", line 290, in run
      cmd_obj.run()
    File "/opt/python3.7/lib/python3.7/distutils/dist.py", line 985, in run_command
      self.run_command(cmd)
    File "/opt/python3.7/lib/python3.7/distutils/dist.py", line 966, in run_commands
      dist.run_commands()
    File "/opt/python3.7/lib/python3.7/distutils/core.py", line 148, in setup
      return distutils.core.setup(**attrs)
    File "/env/lib/python3.7/site-packages/setuptools/__init__.py", line 144, in setup
      'Topic :: Software Development',
    File "/tmp/pip-wheel-hz_z90ap/dlib/setup.py", line 262, in <module>
    File "<string>", line 1, in <module>
  Traceback (most recent call last):
...

请提出修复建议。

【问题讨论】:

    标签: python-3.x google-app-engine google-cloud-platform cmake google-app-engine-python


    【解决方案1】:

    您可以通过自定义运行时在灵活环境中使用非 Python 依赖项。来自About Custom Runtimes:

    自定义运行时允许您定义新的运行时环境, 可能包括其他组件,例如语言解释器或 应用服务器。

    另见Building Custom Runtimes。

    【讨论】:

    • 我已经通过自定义运行时将它部署在 App Engine Flex 上。问题:1.构建时间超过30分钟2.实例扩展时间更长。 3. 此外,正如纪尧姆所说,实例在不使用时不会缩放到 0。
    【解决方案2】:

    如果要自定义环境,可以使用容器。按照 Dustin 的建议将其部署在 App Engine flexible 上,但请注意 App Engine Flex 不会扩展到 0,因此即使您的服务未被使用,您也需要付费。

    因为你有容器,建议你去Cloud Run看看。它类似于 App Engine,但它可以扩展到 0 并且非常强大。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-07-01
      • 2018-03-12
      • 2020-11-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-03-29
      • 2019-01-30
      相关资源
      最近更新 更多