Win部署Flask服务_NSSM

  • pre
    在一些特定的场景下(比如需要使用Windows内核的API)我们需要把我们的服务部署在Windows机器上,在Linux上我们可以使用Gunicorn和Gevent来部署(Docker)我们的服务,然后使用Supervisor来监控我们的进程。但是在Win上可用的Solution便少的可怜,遂整理一下Windows上的解决方案。
  • 先把Flask程序打一个包(.exe)
    这个包作为一个exe来启动服务,打完包之后先Check下能不能正常运行再进行下面的尝试。
    Win部署Flask服务_NSSM_第1张图片
  • 使用Windows自带的服务程序来创建服务
    sc create/delete YOUR_SERVICE_NAME binPath="YOUR_EXE_PATH"
    在这里插入图片描述

拒绝访问就以管理员身份打开命令行工具
Win部署Flask服务_NSSM_第2张图片

  • 注意这里binPath后的等于号=不要留空格
    Win部署Flask服务_NSSM_第3张图片
  • 启动服务
    sc start YOUR_SERVICE_NAME
    Win部署Flask服务_NSSM_第4张图片

这个时候直接运行exe文件,程序是可以正常运行起来的,但是不能作为服务后台运行,于是寻求别的解决方案。

然后就找到了这个小东东,NSSM http://nssm.cc/download

Win部署Flask服务_NSSM_第5张图片

下载后解压就行.

  • nssm install
    进到32或者64位下的nssm.exe下,注册一个你的服务,

Win部署Flask服务_NSSM_第6张图片
nssm install 之后会出现:
Win部署Flask服务_NSSM_第7张图片
接着打开Windows服务窗口,可以看到服务名、状态等其他信息。

配置项说明:

Path:运行应用程序的程序

Startup directory:应用程序所在的目录

Arguments:应用运行的参数

Service name:生成服务的名称

引用:

https://blog.csdn.net/liyou123456789/article/details/123094277
https://blog.csdn.net/weixin_45859850/article/details/115581179

你可能感兴趣的:(Python,flask,python,后端)