当前位置:   article > 正文

【Python Web】Jenkins发布Flask项目相关Shell脚本和配置文件_jenkins python flask

jenkins python flask

使用Jenkins部署flask服务,配置好shell脚本后,可以直接通过操作Jenkins面板的方式控制服务器,快速发布项目。配合git使用,可以指定拉取git分支发布。

方法一

shell命令

cd /www/wwwroot/my_project # 进入工作目录
echo "准备清理Gunicorn进程"
for id in `cat gunicorn.pid`;do # 根据pid文件 循环关闭进程
kill -9 $id
done
echo "结束清理Gunicorn进程"
rm -rf * # 删除代码
cd /www/wwwroot
mv jenkins_auto_pull_proj/* my_project  # 将Jenkins自动拉取的项目文件更名
cd /www/wwwroot/my_project # 进入工作目录
export FLASK_ENV=test # 声明环境变量
echo "开始安装requirements.txt"
pip install -r requirements.txt -i https://pypi.douban.com/simple/ # 安装依赖
echo "结束安装requirements.txt"

# 使用nohup和gunicorn的方式运行项目
# gunicorn-test.py为指定的gunicorn配置文件
nohup gunicorn -c gunicorn-test.py -e FLASK_ENV=test app:app >flaskrun5704.nohup 2>&1 &] ...
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  使用gunicorn方式部署时,需要指定配置文件
  • 1
# 导入线程、文件io 模块
import multiprocessing
import os

# 指定绑定的ip和端口
bind = "0.0.0.0:7003"

# 根据cpu的核数指定进程数
workers = 2 * multiprocessing.cpu_count() + 1 

# 指定工作模式
worker_class = "gevent"
timeout = 60

# 记录进程启动后的pid文件 下次发布时关闭原有进程
pidfile = os.path.dirname(os.path.abspath(__file__)) + "/gunicorn.pid"
accesslog = os.path.dirname(os.path.abspath(__file__)) + "/gunicorn_acess.log"
errorlog = os.path.dirname(os.path.abspath(__file__)) + "/gunicorn_error.log"
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18

方法二

使用nohup模式直接部署项目

这种方式使用flask自带的服务器发布,对于多线程多进程支持不友好,只在测试时使用

cd /www/wwwroot/my_project
rm -rf *
cd /www/wwwroot
mv my-project-tmp/* my_project
cd /www/wwwroot/my_project
export FLASK_ENV=test
export FLASK_APP=my_project.main
pip install -r requirements.txt -i https://pypi.douban.com/simple/
nohup flask run -p 5800 --host=0.0.0.0  >flaskrun5800.nohup 2>&1 &] ...
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

nohup:后台执行shell命令,结果输出到指定文件夹

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/526063
推荐阅读
相关标签
  

闽ICP备14008679号