Flask(1): 在windows系统上部署项目1

1 前言

学习python也有段时间了,最近一个小项目要部署,正好把过程写下来。

在程序的结构上我选择了w/s模式,相比于c/s模式,无需考虑客户端的升级;框架我选择了flask,就是冲着轻量级去的,就是插件多,教程的更新赶不上版本的更迭,比如flask-script。

2 部署方式

python是解释性语言,无需先编译成可执行程序。部署方式有好几种,我曾折腾过几种方法。

2.1 直接复制开发环境

这个方法看起来很简单,依赖模块无需再次安装。就是复制到别的地方要对虚拟环境进行手动修改,要更改好几个文件里的路径,还要执行一些命令修复。虽然我在windows系统上成功迁移过,但我不认为这是好方法。而且在linux系统上好像不行。

2.2 打包成whl模块

这个方法是将自己的项目做成一个包, 可以在其他地方使用pip离线安装。不过我没弄成功。假如项目是一个模块,需要分发给其他项目调用,这个方法就非常好。

2.3 打包成可执行文件

这个方法只适用windows系统,做成exe文件,可以脱离python的环境了,适合一些小程序。不过python不是c#,不是使用.net framework等公共库的,只能自带,所以体积不会小。

2.4 重新创建虚拟环境再复制源代码

这是我目前使用的方法。因为我的项目是最终应用,只安装在一台服务器上。我在服务器上安装相关软件、手动创建虚拟环境、安装依赖,再复制源代码, 系统就可以运行了。更方便的是,更改了代码,我可以直接从开发电脑用同步软件同步到服务器上,非常方便。

3 安装相关软件

3.1 安装python

从官网下载适合windows系统的安装包,运行安装程序

注意1: 安装的第一个界面一定要选择添加路径到系统变量的选项,否则不能直接在命令提示符里使用python相关命令,还要手动添加;

注意2: 安装完成后的界面有一个解除长度限制的按钮,这个我是吃过亏的。以前学python用的visual code, 代码运行出错就是因为这个。 当时是改注册表的, 现在安装包已经能集成了该功能。

安装完成后,可以在命令提示符中检查python命令和pip命令是否正常。

3.2 安装配套

根据自己的项目安装其他配套软件,windows系统上安装还是很简单的。

3.2.1 数据库软件

我用的是mysql,官网下载安装包安装即可;我还用redis作为内存数据库,用来存储日志等不重要的数据。

3.2.2 安装nginx

我做的都是小项目,虽然要求不高,不过我还是使用了nginx作为反向代理。我下载的是1.26,绿色版,无需安装,只要设置好配置文件,运行即可。

相关推荐
用户8356290780513 分钟前
使用Python合并Word文档:实现高效自动化办公
后端·python
闭着眼睛学算法38 分钟前
【双机位A卷】华为OD笔试之【排序】双机位A-银行插队【Py/Java/C++/C/JS/Go六种语言】【欧弟算法】全网注释最详细分类最全的华子OD真题题解
java·c语言·javascript·c++·python·算法·华为od
Pocker_Spades_A1 小时前
Python快速入门专业版(五十四):爬虫基石:HTTP协议全解析(从请求到响应,附Socket模拟请求)
爬虫·python·http
DoubleKK1 小时前
Python 中的 json_repair 使用教程:轻松修复大模型返回的非法 JSON
python
萧鼎2 小时前
深入掌握 OpenCV-Python:从图像处理到智能视觉
图像处理·python·opencv
海琴烟Sunshine2 小时前
leetcode 190. 颠倒二进制位 python
python·算法·leetcode
淡忘_cx2 小时前
Dify Plugin 开发教程
python
海琴烟Sunshine2 小时前
leetcode 338. 比特位计数 python
python·算法·leetcode
呆萌很3 小时前
字典推导式练习题
python
闲人编程4 小时前
Python在云计算中的应用:AWS Lambda函数实战
服务器·python·云计算·aws·lambda·毕设·codecapsule