企业级Flask项目移植记录【待补完】

背景

Flask项目A从老电脑C1移植到新电脑C2上

更新日志

1-240614上线第一版经验,博主关于这个项目包的问题还没有解决,正在解决中,但是整体思路大家在移植的时候可以借鉴。

思路

1-首先生产环境的python解释器等相关的东西最好严格保持一致,这样能避免很多奇奇怪怪的问题!

2-我们在新电脑C2上创建一个新Flask程序,然后把requirements.txt文件中的包一个个下载

3-

过程:

Flask程序如何新建就不讲了,就说创建后如何操作

删新创建Flask程序中没用的东西

解压生产环境中程序

全局Python3.6.6解释器下requirements.txt包

因为我的生产环境是全局解释器跑的程序,所以这里我也用全局,

因为这和win10下Apache部署Flask密切相关,不能随意改动

复制代码
#生成requirements240601.txt文件
pip freeze > requirements240601.txt

#安装requirements240601.txt文件
pip install -r requirements240601.txt

下包出现问题【这就是移植最难的地方】

我需要把前面开发人员的历史问题解决

cffi包问题,先跳过

MarkupSafe问题

mistune包找不到版本

mod-wsgi问题【最大问题】

类似问题不一一截图了,反正很多

历史项目的难点在于你不知道哪个包这个项目实际用了, 哪个包没用,

项目在多个开发阶段下的包都是会不断更新的,如果遇到偷懒的程序员或者当时项目很紧急,他就算知道这个包没用,当时的程序员也不会去删除这个包

这就很考验后来程序员的经验和判断力了

当前我们的思路就是尽量把包装全


转变思路解决包下载不了的问题

我们去老电脑的python解释器下Lib/sitepackages文件夹下把所有包下下来,

然后全部丢到新电脑上对应的python解释器的Lib/sitepackages目录下,

注意新电脑的Lib/sitepackages与Lib文件包也需要做一个备份!

打包与备份【十分重要!!!】

生产环境包替换新电脑下的python包

换包之后肯定会存在问题,这个时候就只能一个个去解决了~

这个相对于我们requirements.txt方式会减少一些难度,

比如我们规避了上面描述的一些包可能由于历史久远不在提供下载的问题哦!

验证包是否装到了正确的位置

【重要!】

复制代码
def error_console:

        【最终报移植成功、如何解决的截图、解决思路,等待博主更,这里单纯占坑】

        pass

编辑配置启动信息

复制代码
--host=0.0.0.0 --port=10018

你在跑项比如修改了数据库连接、端口等信息后,可能会报错,

你需要根据报错去怀疑和验证哪个包装错了,

你的最终目标就是程序能跑起来,能给前端用,

还得经过一段时间的使用后,证明和老电脑上的Flask项目没什么差别,

才能证明你移植真的成功了~

后续问题修复【重要!】

这里我根据我项目启动时的报错进行了包怀疑,简单举几个例子

项目启动时出现下面问题

我预备在比对一下新老电脑的Lib文件,看看和Werzeug可能相关的包复制替换一下,看能不能解决

【24060123点41分更新,还没有解决~,明天搞~】

可能用到的命令

复制代码
1-查看pip版本:用pip -V可以查看版本,是大写的V
命令:pip -V
相关推荐
实名上网宋凯宣5 小时前
Django
后端·python·django
如若1237 小时前
【论文复现】CoFailMed:从零复现医学图像分割的共享失败审计,含完整代码流程与科研绘图
人工智能·python
利威尔xu7 小时前
Go IM 源码实战(14):本地缓存快 3000 倍,失效却难 10 倍
后端·缓存·微服务·面试·golang
逃逸线LOF8 小时前
Ribbon负载均衡原理(Irule组件、源码分析)
后端·spring cloud·ribbon
砚底藏山河8 小时前
python量化自定义周期 K 线合成
java·开发语言·数据库·python·金融
慢云智慧空间8 小时前
从设备智能到空间理解,空间智能终端解决方案商如何重新定义行业标准
后端
视觉小萌新8 小时前
AI Class 3 · Chapter 1:变量、字符串、list/dict、if/for(python学习-小白版-有经验可跳过)
python·学习·list
利威尔xu8 小时前
Go IM 源码实战(13):30 个会话只有 2 个红点,未读数错在三条路径
redis·后端·微服务·面试·golang
薛定谔的猫-菜鸟程序员9 小时前
软件架构设计师开发资料大全(从入门到精通)
后端·python·系统架构·flask·架构设计师
IT_陈寒10 小时前
SpringBoot多环境配置把我坑惨了,这个踩坑经验你最好看看
前端·人工智能·后端