赞
踩
最近在使用Flask框架,写一个小项目,在项目部署启动后,出现了以下这段提示,这段提示的意思是,该启动方式适用于开发环境中,生产环境要使用WSGI服务器。
WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.
以下是该项目的主要结构图:
|— app/
| |— api/
| | |— user_api.py
| | |— init.py
| |— extensions.py
| |— init.py
| |— models/
| | |— user_dao.py
| | |— init.py
| |— service/
| | |— user_service.py
| | |— init.py
|— config/
| |— app_config.py
| |— init.py
|— logs/
|— requirements.txt
|— run.py
|— wsgi.py
开发环境:本机windows10
测试和生成环境:linux
requirements.txt文件主要是存储该项目需要依赖的库及版本要求,但是如果你在本机电脑使用的python版本和linux上使用的版本不一样,那么在部署到测试和生产环境时会出现不少问题,但是出现问题逐条解决就行了。
#生成requirements.txt
pip freeze > requirements.txt
#这个命令将会创建一个名为 my_flask_app.tar.gz 的压缩文件,并包含了 app、config、logs、mm.py、requirements.txt 和 run.py 这些文件和文件夹。
tar -czvf my_flask_app.tar.gz app config logs mm.py requirements.txt run.py
将打包后的文件传入要部署的机器上,使用以下命令解压到指定的文件中
tar -xzvf my_flask_app.tar.gz -C ~/my_flask
为了排除该项目对机器上其他应用的影响,为该项目创建独立的虚拟环境。
cd my_flask
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
from app import create_app
app = create_app()
if __name__ == "__main__":
app.run()
pip install gunicorn
gunicorn -b 0.0.0.0:5000 wsgi:app --daemon
ps aux | grep gunicorn
执行完上面8个步骤之后,项目就在后台启动了,如果想关闭项目,使用以下命令:
kill 25702 25703
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。