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,绿色版,无需安装,只要设置好配置文件,运行即可。

相关推荐
Thomas.Sir4 分钟前
智能革命:AI如何重塑金融风控与信贷审批的底层逻辑
人工智能·python·ai·风控
流星蝴蝶没有剑7 分钟前
CoPaw Agent 对接 Python 客户端开发指南:实现流式响应与实时打印
开发语言·python
小陈工17 分钟前
Python Web开发入门(十八):跨域问题解决方案——从“为什么我的请求被拦了“到“我让浏览器乖乖听话“
开发语言·python·机器学习·架构·数据挖掘·回归·状态模式
赵优秀一一22 分钟前
Python 工程化基础1:环境(conda)、pip、requirements.txt
linux·开发语言·python
kaizq23 分钟前
Python-Nacos电商订单分布微服系统开发
python·nacos·分布微服务·ai-ima-glm·电商订单
kishu_iOS&AI36 分钟前
机器学习 —— 线性回归(实例)
人工智能·python·机器学习·线性回归
架构师老Y1 小时前
007、微服务架构设计与服务拆分策略
python·微服务·架构
skilllite作者1 小时前
SkillLite 多入口架构实战:CLI / Python SDK / MCP / Desktop / Swarm 一页理清
开发语言·人工智能·python·安全·架构·rust·agentskills
ZC跨境爬虫1 小时前
批量爬取小说章节并优化排版(附完整可运行脚本)
前端·爬虫·python·自动化
ths5121 小时前
Python 正则表达式实战指南:从入门到精通(12 个高频案例)(三)
python·正则表达式