Ошибка веб-приложения Azure Linux Python: libodbc.so.2 не может открыть общий объектный файл - PullRequest
0 голосов
/ 28 ноября 2018

Создано приложение фляги, которое работает, когда я запускаю его локально (Windows 10).Развертывание через локальный git успешно, но когда я пытаюсь посетить URL, все, что я вижу, если Ошибка приложения.Поэтому, когда я проверяю поток журнала, он показывает, что приложение перестает работать при попытке импортировать pyodbc с ошибкой «ImportError libodbc.so.2: не удается открыть файл общего объекта».

Итак, я вставил SSH в контейнер, активировал виртуальную среду, назвал open python и вызвал import pyodbc, и это сработало.Теперь я запутался в том, почему он не работает, когда я пытаюсь зайти по URL, когда я работаю по SSH и импортирую pyodbc, это сработает.Я не уверен, предоставил ли я достаточно подробностей, поэтому дайте мне знать, если я должен добавить что-нибудь еще.

Что происходит?Как мне исправить мой контейнер, чтобы он мог импортировать pyodbc?

1 Ответ

0 голосов
/ 30 ноября 2018

@ user152836 - Не могли бы вы сообщить нам следующую информацию для дальнейшей отладки:

  1. Версия python, которую вы используете в своем веб-приложении?Собственное или расширение?
  2. ОС вашего веб-приложения?

Если вы установили расширение Python, проблема может заключаться в том, что веб-приложение Azure использует Python по умолчанию, который не имеет драйвера pyodbc,Чтобы использовать расширение Python, вы можете следовать этой теме - установить драйвер odbc для службы приложений Azure

Вам также необходимо экспортировать соответствующий путь LD LIBRARY и добавить его в свой файл профиля bash.как в этом примере: Исполняемый файл Python не находит общую библиотеку libpython

Если два приведенных выше предложения не работают, вы также можете проверить эту ссылку: pyodbc - ошибка при запуске приложенияв контейнере

...