Jenkins执行nohup命令

上一篇介绍了如何通过Jenkins持续构建flask项目

然后直接使用的python3 run_main.py来启动,通过这种方式启动后,可以观察一下,Jenkins的构建任务会一直挂载(任务一直处于构建中)

平时在终端通过这个命令启动后端服务时,如果关掉终端,服务也会断掉

 

所以一般不用这种方式,可以通过nohup命令来后台启动flask服务

在shell中输入以下命令

BUILD_ID=dontKillMe
nohup python3 run_main.py >server.out 2>&1 & 
sleep 5

这样的话,通过nohup启动flask服务,可以在后台运行,同时日志打印到server.out中


通过网上冲浪🏄‍♀️,发现了另一种后台启动的方式(参考https://blog.csdn.net/weixin_39359455/article/details/108878865)

通过定时任务的方式来执行 python3 run_main.py

Linux可以使用at 命令来实现定时任务(at的基本介绍

先在终端简单试验一下

例如在1分钟后创建一个test文件

[root@VM-8-3-centos ~]# echo "touch test" | at now + 1 min
warning: commands will be executed using /bin/sh
job 10 at Sun Jun 26 10:26:00 2022
[root@VM-8-3-centos ~]# ls  # 1分钟后查看一下
test
[root@VM-8-3-centos ~]#

 所以Jenkins中shell命令按照如下方式写一下

再次构建任务,可以发现flask项目正常在后台运行了

 

posted @ 2022-07-02 14:47  我是冰霜  阅读(834)  评论(0编辑  收藏  举报