Azure Linux Python Web应用程序ImportError:libodbc.so.2无法打开共享对象文件

时间:2018-11-28 06:52:21

标签: python azure odbc

构建了一个烧瓶应用程序,该应用程序在本地运行时有效(Windows 10)。通过本地git的部署是成功的,但是当我尝试访问url时,全部看到是否出现Application Error。因此,当我检查日志流时,它表明该应用程序在尝试导入pyodbc时出现故障,错误为“ ImportError libodbc.so.2:无法打开共享对象文件”。

因此,我通过SSH进入了容器,激活了虚拟环境,它名为open python,名为import pyodbc,它可以正常工作。现在,我对为什么当我尝试访问URL时为什么失败会感到困惑,而当我自己进行SSH并导入pyodbc时,为什么会失败。我不确定是否提供了足够的详细信息,所以请告知是否应该添加其他内容。

这是怎么回事?如何修复我的容器以便可以导入pyodbc?

1 个答案:

答案 0 :(得分:0)

@ user152836-您能否让我们知道以下信息以进行进一步调试:

  1. 您在Web应用程序中使用的python版本?本机还是扩展?
  2. 您的网络应用程序的操作系统是什么?

如果安装了python扩展程序,则问题可能是azure Web应用程序使用了没有pyodbc驱动程序的默认python。为了使用python扩展,您可以遵循以下线程-install odbc driver to azure app service

您还需要导出相关的LD LIBRARY路径,并将其添加到bash配置文件中,如以下示例所示: Python executable not finding libpython shared library

如果以上两个建议均无效,您还可以检查以下链接:pyodbc - error while running application within a container