python - 如何在谷歌云功能中运行exe文件?
问题描述
我的本地机器上有一个 Windows 可执行文件(net_audio_client.exe)。当我在我的 pycharm IDE 上运行以下 python 代码时,它工作正常。
def hello_world(request):
request_json = request.get_json()
if request.args and 'message' in request.args:
return request.args.get('message')
elif request_json and 'message' in request_json:
return request_json['message']
else:
print(subprocess.Popen("net_audio_client -user xxx -pass xxx -mac macaddr", shell=True,
stdout=subprocess.PIPE).stdout.read())
return f'Hello World!'
当我将其压缩并将其上传到谷歌云功能时,相同的代码不起作用。我收到以下错误:
/bin/sh: 1: net_audio_client: not found
我遵循的堆栈问题:
谢谢
解决方案
Cloud Functions、Cloud Run 和 App Engine 仅支持 Linux 运行时。您不能在它们上运行 Windows 二进制文件。
如果您想使用容器和 Windows 二进制文件,可以使用 Windows 部署 GKE 集群。或者直接使用 Compute Engine。
推荐阅读
- python - 提取列表子集以绘制的 Pythonic 方法
- css - 如何更改 nuxt gmap 标记图标大小?
- python - Python:CalledProcessError,命令返回非零退出状态 1
- node.js - 在 NodeJS 中测试 http.Server.close 错误
- javascript - 无法使用 next.js 加载静态资产
- java - 当值出现时使调试器停止 Intelij Idea
- queue - 在达到 100 个队列项计数后,BOT 不会获取 uipath orchestrator 队列项,即使已设置分页值
- javascript - 如何有条件地显示 React JSX 中的元素?
- python - 将 Graph 转换为 SavedModel 后的 Tensorflow FailedPreconditionError
- spring - 在命令式弹簧应用程序中处理弹簧反应器异常