# Java基础知识学的差不多了,项目上又没什么事,学学py,方便以后对接
1、打包flask应用(好痛苦,在什么平台打包就只在那个平台可用想在linux用只能参考方法2了)
pyinstaller --onefile app.py -n myapp
2、在linux打包
# 在linux系统创建一个虚拟环境,防止各个flask冲突
python3 -m venv myenv
# 进入虚拟环境
source myenv/bin/activate
# 下载依赖的软件包
pip xxx
# 下载打包工具
pip install pyinstaller
# 打包
pyinstaller main.py
# 退出虚拟环境
exit
3、pip下载时可能会因为不可描述报错
在pip时选择镜像源
pip install <软甲包> -i https://pypi.tuna.tsinghua.edu.cn/simple/
4、linux查看端口是否开放,有就是开了没有就是没开
# 第一种方式
lsof -i:6379
# 第二种方式
netstat -aptn |grep -i 6379
# 杀死进程
kill -9 port(进程号)
5、生成项目所需的requerments.txt文件
# 在pycharm终端
pip install pipreqs
pipreqs ./ --encoding=utf8
# 在部署时下载
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple/
6、解决一个报错:在requerments.txt中添加Werkzeug==2.2.2
from werkzeug.urls import url_quote
ImportError: cannot import name 'url_quote' from 'werkzeug.urls'
7、打包后的应用不知如何运行,本人太菜,选择直接运行python文件
# 接着创建虚拟环境下载依赖之后,直接对python脚本执行,表示输出日志后台运行
# 该文件要进入虚拟环境后执行
nohup python3 app.py > log.txt 2>&1 &
8、问题解决:flask远程无法访问,查看端口为127.0.0.1:5000
# 修改代码
app.run(host='0.0.0.0', port=5000, debug = True)
9、下载torch时,经常下到cpu版本,只要去torch官方网站,通过链接下载满意的版本就好
# 网站
https://download.pytorch.org/whl/torch/
# 下载
pip install https://download.pytorch.org/whl/cu118/torch-2.0.0%2Bcu118-cp310-cp310-win_amd64.whl#sha256=5ee2b7c19265b9c869525c378fcdf350510b8f3fc08af26da1a2587a34cea8f5