python打包flask服务成exe文件,快速注册成windows服务

解决打包过大的问题

用 Pyinstaller 打包 Python 程序 + 解决打包结果过大 >>

由于相关业务问题,需要在windows环境中开启多个flask服务,为了方便管理各个flask服务,需要进行注册成windows服务,在windows服务中进行自动开启状态。下面将分享在实际过程中的方法,避免小伙伴们遇到同样的问题。

步骤
1.安装flask、pyinstaller
2.下载nssm部署windows服务执行文件
3.准备flask开发的案例代码
4.使用pyinstaller将flask服务进行打包
5.解压nssm文件,指定打包文件和服务名称
6.测试最终结果是否正确

0.准备工作

python环境:3.6.8
windows环境:windows10
安装相关包如下,准备打包python代码

1.安装flask框架

pip install flask

2.安装pyinstaller包

pip install pyinstaller

下载nssm.zip文件,准备在windows上安装exe文件

下载地址

http://www.nssm.cc/release/nssm-2.24.zip

3.开始实际操作

flask代码开发,以下是个demo

from flask import Flask, request,jsonify
app = Flask(__name__)
 
 
 
# 查询模型训练状态
@app.route('/modelstatus', methods=['GET', 'POST'])
def train_status():
    if request.method == 'GET':
        return jsonify({'code': 200, 'status': 'false', 'msg': 'hello'})
    else:
        return jsonify({'code': 500, 'msg': '不支持该请求'})
 
if __name__ == '__main__':
    app.run(host="0.0.0.0", port=9004)

4、开始打包

说明:(我在执行 pyinstaller -w admin.py时,打包过程中控制台正常没报错,打包完成以后进行dist文件,找到admin.exe双击启动时,提示创库显示执行失败。因为想程序占着控制台,所以执行的参数为 -w)

最终执行flask服务打包

pyinstaller -F -p D:\Work\pwork\ pc_main.py

-p 将依赖包目录包含到打包范围

5、开始进行注册windows服务

  1. 在cmd中进入nssm中的目录,然后进行命令
  2. nssm install aiweb(服务名)
  3. 选择Application path按钮将pyinstaller打包后的exe文件选择过来。
  4. 点击installer service按钮,则提示成功,此时去windows服务中查看服务即可。

6.测试windows服务

在服务中点击启动按钮,在浏览器中输入ip地址和端口号,此方法可以将flask服务、爬虫服务都可以注册成windows服务,开机自启动。

原文链接:https://blog.csdn.net/mid_python/article/details/106239666

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容