
各位 v 友,入门 python 不久,目前习惯使用 windows 环境开发项目,团队同事大多数也是。现有个项目打算用 flask 实现并运行 api 服务提供给外部应用调用,查看资料发现,flask 自带的 wsgi 不推荐生产环境使用,官方推荐使用其他的 wsgi 服务器进行部署(如 gunicorn )。 现在想实现在 windows 下开发,可以使用 flask 默认 wsgi,生产环境可以用 gunicorn 运行。(要求:两种环境代码放在同个项目里),请问有什么方法可以实现?
1 xiexingjia 2019-05-20 15:58:38 +08:00 if __name__ == '__main__': app.run() |
2 frostming 2019-05-20 16:34:24 +08:00 |
3 Root1997 2019-05-20 17:18:45 +08:00 win10 1903 有个 WSL2 的 linux 环境 windows 开发完直接在 wsl2 进行部署调试 |
5 anthoy 2019-05-20 17:50:58 +08:00 docker for windows |
6 luozic 2019-05-20 17:59:20 +08:00 via iPhone 用不用 docker 用上 docker 不用 上 wsl |
7 fanjianhang OP |
8 Flasky 2019-05-20 23:24:54 +08:00 via Android 这个应该比较简单吧,开发环境靠 app.run()运行,而且 gunicorn 配置是很容易的了,写一个 shell 脚本,把你的 Application 复制过去,运行一下脚本就 ok 了 |
9 Qzier 2019-05-20 23:54:44 +08:00 难道 Windows 上开发和 Linux 上部署冲突?我反正是没遇到。 |
10 kosmgco 2019-05-21 00:09:42 +08:00 via iPhone https://realpython.com/kickstarting-flask-on-ubuntu-setup-and-deployment/ 看下这个,用 supervisor 守护 gunicorn 启动的 flask app |
11 Trim21 2019-05-21 05:28:59 +08:00 via Android |
12 hp66722667 2019-05-21 08:44:24 +08:00 http://helloflask.com/ 这个应该可以帮助到你 |
13 Marsss 2019-05-21 08:47:52 +08:00 supervisor+nginx+gunicorn+flask |
14 iweus 2019-05-21 08:59:24 +08:00 建个脚本跑一下就可以了 gunicorn -w 4 -b 127.0.0.1:8000 run:appx |
15 JimmyTinsley 2019-05-21 09:26:59 +08:00 本机上开发环境直接 app.run(), 部署时用 gunicorn 跑呗. 可以大致参考下这个项目的做法 https://github.com/open-falcon/dashboard |
16 fngtz 2019-05-21 15:52:48 +08:00 via iPhone pycharm 有很方便的远程调试功能。 用 docker,去官方仓库能搜到别人写好的 image 来参考 /直接用,把代码挂载出来。 不用 docker 的话,systemd 来管理 gunicorn 也很方便。 总归是 pycharm 的方便,一键同步最方便。 |
17 fanjianhang OP 谢谢各位 v 友的热心帮助,我目前参照 @liujie333333 的方法进行尝试,加上有现成代码可供参考,谢谢大伙 |