在CentOS7上部署与关闭Flask接口
教程概述
本篇教程主要内容为讲述在Centos7上部署Flask接口的方法,教程内所使用的接口为一个基于yolo的图像识别返回信息的flask接口,本教程适用于已具备Python环境且需要部署Flask接口的开发者。
前置文章
如有需要可以看下这两篇。
Centos7安装python3环境并配置pip
Centos7配置yolov8环境(无显卡版)
正文
不推荐的启动方式
当一个包含flask接口的python文件(假设名为Main.py)存在于centos系统中时,我们第一时间会使用例如 xshell、MobaXterm 之类的远程连接工具连接到该系统,并用以下的启动运行接口文件
python3 Main.py
如图,我这里启动了一个名为Main.py的文件,接口也启动了,在浏览器调用后,也返回相应的信息
但是,当我关闭Xshell或者MobaXterm后,这个接口也会随之被关闭。
推荐的启动flask接口方式
首先要明确自己python的所在路径,这个路径是你安装Python的路径,我的Python安装路径为
/home/Python-3.12.3/bin/python3.12
知道了这个路径后,用如下命令启动flask接口
nohup /home/Python-3.12.3/bin/python3.12 Main.py &
当然,如果你期望能将日志保存,可修改为如下命令启动
nohup /home/Python-3.12.3/bin/python3.12 Main.py &> output.log &
此时,当我们退出Xsheel或MobaXterm后,接口仍然会存在
优化启动方式
每次启动接口手动输入命令过于麻烦,因此可在与Main.py相同的目录下创建一个sh脚本文件。
使用如下命令创建sh脚本文件
vi start_flask.sh
如图
然后在该脚本文件中加入如下内容,注意,因为我是用的python的自带虚拟环境创建的项目,因此有source /home/yolo8_pro/bin/activate 这一行来激活虚拟环境
#!/bin/bash
source /home/yolo8_pro/bin/activate
nohup /home/Python-3.12.3/bin/python3.12 Main.py &> output.log &
如图
脚本文件创建完成后,就可以直接在当前目录通过执行命令 sh start_flask.sh利用脚本来快速启动该Main.py文件了。如图随之使用命令 ps -ef | grep Main 来查看Main.py是否启动
停止的方式
停止该接口所在进程的方式就更简单了,在上图可以看到Main.py所在PID有8599、8610
因此执行 kill -9 8599 与 kill -9 8610 就可以了
总结
以上为幽络源的在Centos7中部署与关闭flask接口的教程,如有疑问可加Q群307531422交流