flask 后端代码如何部署,包如何管理

2019-08-18 11:57:29 +08:00
 gaoyadianta
请教各位,需求如下:
开发了一个 flask 后端,需要部署到不同的局域网服务器上。
此外,之前发现了这样一个问题,有一个包在升级之后由于有了改动导致程序出现了一个 bug,所以现在想把这些包也管理起来,包括包的版本和 python 的版本
这两方面需求的话,应该怎么处理呢?上 docker 吗?即便是 docker 是不是也没办法锁定包的版本啊
2153 次点击
所在节点    Python
9 条回复
OhYee
2019-08-18 15:45:52 +08:00
只考虑依赖的话,可以把依赖的包写成 requirements.txt
使用 pip install -r requirements.txt 安装依赖。
在这个文件里可以指定版本,具体格式可以看下文档或者找个大项目抄一下。

另外也有那些什么 virtualenv 之类的可以同时管理包和 python 版本。
frostming
2019-08-18 19:37:36 +08:00
锁定依赖包版本这种场景,就是 pipenv 解决的问题,了解一下
gaoyadianta
2019-08-18 20:38:55 +08:00
@frostming 生产环境的话呢?也用这个嘛?现在不是版本冲突的问题,是我想锁定版本。

@OhYee 好的谢谢,这是业界普遍方安吗
hustlibraco
2019-08-18 21:19:59 +08:00
virtualenv + requirements.txt 指定版本
2DaYe
2019-08-18 22:01:39 +08:00
把应用包装成一个 module,用 setup.py 管理运行依赖,到新环境直接 pip install -e .
frostming
2019-08-19 09:17:47 +08:00
@gaoyadianta 也可以用啊,要是嫌重就用
pip freeze > requirements.txt
也可以锁定版本
bigjack
2019-08-19 09:48:27 +08:00
pipenv,比 virtualenv 好用点
gaoyadianta
2019-08-19 11:53:09 +08:00
@frostming 了解了一下,应该是我想要的,多谢🙏
gaoyadianta
2019-08-19 11:53:28 +08:00
@bigjack 🙏

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/592850

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX