一、宝塔面板安装Python虚拟环境
(一)安装conda
参考:宝塔centos7安装Conda,https://blog.csdn.net/weixin_47723549/article/details/127629129
1、
wget https://repo.anaconda.com/archive/Anaconda3-2022.10-Linux-x86_64.sh
2、
sh ./Anaconda3-2022.10-Linux-x86_64.sh
安装时,设置anaconda安装位置为:/www/wwwroot/ydbjcn/anaconda3
3、
配置环境变量,编辑 /root/.bashrc
最后增加一行
export PATH="/www/wwwroot/anaconda3/bin:$PATH"
4、
使得环境变量生效
source /root/.bashrc
5、
测试是否安装成功
conda info
6、
安装conda的原因参考:宝塔Python管理器的虚拟环境的使用,https://www.jianshu.com/p/1892178c4f6c
因为我们linux服务器内置的python是2.7版本,很多时候是不符合的。而且我们不能动系统的python的环境,因为其他的软件要用,要是你手贱,升级了它,那么我们的服务器可能就没法运行了。这个时候,管理器给我们提供的虚拟环境就很关键了。比如我现在选择的python版本是3.7.2,那么我们就可以用虚拟环境的python就是3.7.2。
(二)安装项目
参考来源,Centos7宝塔部署python,https://blog.csdn.net/weixin_47723549/article/details/127632224
1、
打开软件商店,搜索安装python项目管理器,打开设置,
安装python版本
2、
创建文件夹,目录为 www/wwwroot/ydbjcn/python
并上传项目,包括index.py文件。
参考:easy-flask-json-mvc-socketio
项目作者:水漫门廷
项目地址:https://gitee.com/huashiyuting/flask
3、
打开软件商店,打开python项目管理器,新建项目
此时项目路径中会创建一个管理依赖的文件夹23eeeb4347bdd26bfc6b7ee9a3b755dd_venv。
4、
安装conda虚拟环境
conda create -p /www/wwwroot/ydbjcn/python/23eeeb4347bdd26bfc6b7ee9a3b755dd_venv/ python=3.8
5、
查看虚拟环境
conda env list
6、
激活该环境
source activate /www/wwwroot/ydbjcn/python/23eeeb4347bdd26bfc6b7ee9a3b755dd_venv/
(四)安装项目依赖
1、(可略过)
pip3 freeze > requirements.txt # 生成依赖包的需求文件
2、
pip install -r requirements.txt
中间遇到版本问题,取消了两个包的版本号,继续安装成功。
3、
启动失败,打开日志查看缺少哪些包
4、
继续安装其他需要的依赖
继续安装flask、flask_socketio、flask_cors、apscheduler、sqlalchemy、pymysql、cerberus、sqlalchemy_serializer、jwt。
5、
启动成功
二、宝塔面板其他经验
1、
宝塔面板开启SSL (HTTPS)
https://zhuanlan.zhihu.com/p/369713175
2、
宝塔面板中部署flask项目
https://zhuanlan.zhihu.com/p/514879144
3、
flask开源项目
https://zhuanlan.zhihu.com/p/145263554
authbase
项目作者:David
项目地址:https://gitee.com/zhujf21st/authbase
基于Python的Flask WEB框架实现后台权限管理系统,内容包含:用户管理、角色管理、资源管理和机构管理。前端页面参考了sypro。
easy-flask-json-mvc-socketio
项目作者:水漫门廷
开源许可协议:Apache-2.0
项目地址:https://gitee.com/huashiyuting/flask
一套基于flask,vue的前后端分离的解决方案。
4、
在 VSCode中使用Flask官方教程 (一)
https://zhuanlan.zhihu.com/p/40706149
https://github.com/Microsoft/python-sample-vscode-flask-tutorial
5、
宝塔面板跨域 No ‘Access-Control-Allow-Origin’ header is present on the request
https://www.php.cn/topic/bt/471528.html
网站》选择网站》配置文件
来到这个页面在最下面粘贴上面的代码,后重启服务器就可以了
add_header 'Access-Control-Allow-Origin' '*';
add_header 'Access-Control-Allow-Credentials' 'true';
add_header 'Access-Control-Allow-Mehtods' 'GET, POST, OPTIOINS';
6、
宝塔面板部署 vue
https://cloud.tencent.com/developer/article/1977167