部署搅拌机天青应用
我抄Blender.exe
和所有相关文件到Azure API App
然后尝试用我这样的自定义Python脚本来运行它(使用System.Dianostics.Process
()):部署搅拌机天青应用
blender.exe --background --python myscript.py
但不能让它跑正常。请注意,它在我的本地IIS中正常工作。
所以问题是Azure应用程序支持运行Blender吗? (因为Blender可能需要GPU支持机器才能运行,而Azure不支持GPU)
如果是,那么怎么看blender.exe
命令返回什么错误? (我无法远程桌面Azure Api App
手动不幸运行命令)
更新:
我可以运行以上成功地使用Azure Console
命令行通过手动搅拌器脚本。 但是,当运行使用代码System.Diagnostics.Process
(脚本),它得到了StandardError的流这样的错误:
Fatal Python error: Py_Initialize: can't initialize sys standard streams
OSError: [WinError 6] The handle is invalid
@MinhNguyen,根据维基捻,Azure的应用程序服务的page其中包括阿比应用程序不支持使用GDI场景+由于Win32k.sys(User32/GDI32)限制,但搅拌机适用于gdi32
。所以不幸的是,搅拌机无法在Azure Api App上工作,请考虑Azure Cloud Service或虚拟机用于搅拌机。
更新: 作为@MinhNguyen评论说,搅拌机可以手动在捻控制台中运行,但它似乎搅拌机作品与GDI,因为编译搅拌器需要GDI32.LIB的。因此,解决此问题的方法是将包含blender.exe和相关的python脚本作为webjob在Azure上运行。
谢谢。但为什么我仍然可以在Kudu调试控制台中使用命令行在Azure Api App中运行Blender脚本? –
@MinhNguyen,我搜索了编译搅拌器需要gdi32.lib,但我不确定只用cmd运行搅拌器是否需要gdi。如果您可以在Kudu控制台中手动运行它,我认为您可以尝试将它们打包为Webjob来运行。 –
谢谢@PeterPan。我正在把它移到WebJob上,它工作。 –
我没有使用它,但有一个[项目在github上](https://github.com/Azure/azure-batch-apps-blender)在azure上运行blender。 – sambler