我在Azure中使用Python3.7(Flask)Web应用程序
我也确认了 Web 应用程序 Stack 运行时也运行 Python3.7
该项目在 127.0.0.1:5000 (localhost) 中运行良好
当我尝试将脚本部署到azure webapp(应用程序服务)时
我收到此错误:-
File "/home/site/wwwroot/init.py", line 2, in <module>
2019-12-16T15:50:45.275997228Z from flask_sqlalchemy import SQLAlchemy
2019-12-16T15:50:45.276001128Z ModuleNotFoundError: No module named 'flask_sqlalchemy'
我已经在 venv (env) 中安装了 Flask-SQLAlchemy 正在运行
$ pip install Flask-SQLAlchemy
我还将Flask-SQLAlchemy导入到requirements.txt
flask_sqlalchemy==2.4.1
sqlalchemy==1.3.11
click==6.7
Flask==1.0.2
itsdangerous==0.24
Jinja2==2.10
MarkupSafe==1.0
Werkzeug==0.14.1
flask_admin==1.5.3
flask_login==0.4.1
pyodbc==4.0.27
我也运行
$ pip install -r requirements.txt
我的 pip 版本是 19
$ pip -V
pip 19.0.3 from /<project_path>/venv/lib/python3.7/site-packages/pip (python 3.7)
在 venv 中安装软件包
$ ls venv/lib/python3.7/site-packages/
Flask-1.0.2.dist-info flask_sqlalchemy
Flask_Admin-1.5.3-py3.7.egg-info itsdangerous-0.24-py3.7.egg-info
Flask_Login-0.4.1-py3.7.egg-info itsdangerous.py
Flask_SQLAlchemy-2.4.1.dist-info jinja2
Jinja2-2.10.dist-info markupsafe
MarkupSafe-1.0-py3.7.egg-info pip
SQLAlchemy-1.3.11.dist-info pip-19.0.3.dist-info
WTForms-2.2.1.dist-info pkg_resources
Werkzeug-0.14.1.dist-info pyodbc-4.0.27.dist-info
__pycache__ pyodbc.cpython-37m-darwin.so
click setuptools
click-6.7.dist-info setuptools-40.8.0.dist-info
easy-install.pth sqlalchemy
easy_install.py werkzeug
flask wheel
flask_admin wheel-0.33.6.dist-info
flask_login wtforms
.
最佳答案
问题是因为 venv
不导出antenv.tar.gz
文件到 webapp
请不要使用az webapp up --sku F1 -n <app-name> -l <location-name>
重新部署更新
使用本地 Git 部署到 Azure 应用服务:-
https://learn.microsoft.com/en-us/azure/app-service/deploy-local-git
关于azure应用程序服务中的Python ModuleNotFoundError包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59360451/