Разверните API Python-Flask в Azure - PullRequest
0 голосов
/ 11 января 2019

Я развернул Python-Flask API в Azure. Работает нормально в среде разработки. Он имеет следующие зависимости, которые упоминаются в файле .txt.

  • нажмите == 6.7
  • Настой == 1.0.2
  • itsdangerous == 0,24
  • Jinja2 == 2,10
  • MarkupSafe == 1,0
  • Werkzeug == 0.14.1
  • jsonpickle == 1,0
  • pyodbc == 4.0.25

У меня есть класс app.py , который имеет некоторую функцию, которая содержит некоторые операции DB CURD . Он также имеет db.py , который содержит код ниже:

import pyodbc cnxn = pyodbc.connect(cs)

Но когда я перехожу на https://kmsazapi.azurewebsites.net/, выдается ошибка ниже
:( Ошибка приложения. Если вы являетесь администратором приложения, вы можете получить доступ к диагностическим ресурсам.

Пожалуйста, найдите журналы приложений из Azure:

2019-01-19T16: 30: 46.743756546Z 2019-01-19T16: 30: 46.893500456Z Запуск сервера OpenBSD Secure Shell: sshd. 2019-01-19T16: 30: 46.921319668Z Запуск python /usr/local/bin/entrypoint.py 2019-01-19T16: 30: 47.042444539Z выполнение: 2019-01-19T16: 30: 47.042628845Z python - версия 2019-01-19T16: 30: 47.060630336Z Python 3.7.1 2019-01-19T16: 30: 47.060830442Z выполнение: 2019-01-19T16: 30: 47.060993448Z pip - версия 2019-01-19T16: 30: 49.209547693Z pip 10.0.1 с /home/site/wwwroot/antenv/lib/python3.7/site-packages/pip (python 3.7) 2019-01-19T16: 30: 49.214266747Z найдено приложение колбы 2019-01-19T16: 30: 49.219978635Z выполнение: 2019-01-19T16: 30: 49.219990835Z. antenv / бен / активировать 2019-01-19T16: 30: 49.224706090Z 2019-01-19T16: 30: 49.224798193Z выполнение: 2019-01-19T16: 30: 49.224971698Z GUNICORN_CMD_ARGS = "- bind = 0.0.0.0 - timeout 600" 2019-01-19T16: 30: 50.183264018Z [2019-01-19 16:30:50 +0000] [36] [INFO] Запуск gunicorn 19.9.0 2019-01-19T16: 30: 50.183984042Z [2019-01-19 16:30:50 +0000] [36] [INFO] Прослушивание: http://0.0.0.0:8000 (36) 2019-01-19T16: 30: 50.184216749Z [2019-01-19 16:30:50 +0000] [36] [INFO] Использование работника: синхронизация 2019-01-19T16: 30: 50.194083973Z [2019-01-19 16:30:50 +0000] [39] [INFO] Загрузка работника с pid: 39

2019-01-19T16: 30: 50.967282324Z [2019-01-19 16:30:50 +0000] [39] [ОШИБКА] Исключение в рабочем процессе

2019-01-19T16: 30: 50.967302024Z Traceback (последний вызов был последним): 2019-01-19T16: 30: 50.967306124Z Файл "/usr/local/lib/python3.7/site-packages/gunicorn/arbiter.py", строка 583, в spawn_worker 2019-01-19T16: 30: 50.967311525Z worker.init_process () 2019-01-19T16: 30: 50.967325625Z Файл "/usr/local/lib/python3.7/site-packages/gunicorn/workers/base.py", строка 129, в init_process 2019-01-19T16: 30: 50.967329625Z self.load_wsgi () 2019-01-19T16: 30: 50.967332825Z Файл "/usr/local/lib/python3.7/site-packages/gunicorn/workers/base.py", строка 138, в load_wsgi 2019-01-19T16: 30: 50.967336425Z self.wsgi = self.app.wsgi () 2019-01-19T16: 30: 50.967347026Z Файл "/usr/local/lib/python3.7/site-packages/gunicorn/app/base.py", строка 67, в wsgi 2019-01-19T16: 30: 50.967350926Z self.callable = self.load () 2019-01-19T16: 30: 50.967354226Z Файл "/usr/local/lib/python3.7/site-packages/gunicorn/app/wsgiapp.py", строка 52, в загрузке 2019-01-19T16: 30: 50.967357626Z return self.load_wsgiapp () 2019-01-19T16: 30: 50.967361026Z Файл "/usr/local/lib/python3.7/site-packages/gunicorn/app/wsgiapp.py", строка 41, в load_wsgiapp 2019-01-19T16: 30: 50.967364426Z return util.import_app (self.app_uri) 2019-01-19T16: 30: 50.967367726Z Файл "/usr/local/lib/python3.7/site-packages/gunicorn/util.py", строка 350, в import_app 2019-01-19T16: 30: 50.967371427Z импорт (модуль) 2019-01-19T16: 30: 50.967374727Z Файл "/home/site/wwwroot/application.py", строка 7, в 2019-01-19T16: 30: 50,967378427Z импорт БД 2019-01-19T16: 30: 50.967381627Z Файл "/home/site/wwwroot/db.py", строка 1, в 2019-01-19T16: 30: 50.967385027Z импорт pyodbc 2019-01-19T16: 30: 50.967388327Z Ошибка импорта: libodbc.so.2: невозможно открыть общий объектный файл: такого файла или каталога нет 2019-01-19T16: 30: 50.967653236Z [2019-01-19 16:30:50 +0000] [39] [INFO] Рабочий выходит (pid: 39) 2019-01-19T16: 30: 51.050986468Z [2019-01-19 16:30:51 +0000] [36] [INFO] Выключение: мастер 2019-01-19T16: 30: 51.051229076Z [2019-01-19 16:30:51 +0000] [36] [ИНФО] Причина: рабочий не загрузился. 2019-01-19T16: 30: 51.102156846Z

Чего мне не хватает?

1 Ответ

0 голосов
/ 14 января 2019

Обновление: 0115:

Если вы развертываете приложение Python в веб-приложении для Windows, вы можете установить расширение Python, как показано ниже: Перейдите на портал Azure -> Служба вашего приложения -> Расширения -> Добавить -> выберите расширения:

enter image description here

enter image description here


Как развернуть приложение для фляжки?

Вы можете обратиться к официальному документу для развертывания. Я следовал за документом, и могу хорошо работать на лазурном с сайта https://xxx.azurewebsites.net/home.

мой код:

from flask import Flask
app = Flask(__name__)

@app.route("/home")
def home():
    return "Hello World a nice day!"

после развертывания в Azure сайт работает хорошо:

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...