栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

flask运维脚本(长时间运行)

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

flask运维脚本(长时间运行)

flask项目每次开启完总会自动关闭了。
听闻远方哥(QQ25008793)给我手写了一个脚本。。。。牛逼的一批。。

后台运行并且Shell退出程序依然运行使用命令:

nohup app.py & 在实际过程中,我们一般用脚本,另外就是用 docker k8s 自动编排。

给你写一个脚本。

脚本上传到这个目录就可以使用了,方式

sh ./start.sh start

start.sh代码如下:

function start(){
  if [ ! -d 'venv' ]; then
    python3 -m venv venv
  fi

  source venv/bin/activate

  # requirements.txt
  if [ ! -e 'requirements.txt' ]; then
    echo 'error: "requirements.txt" file not found!'
    exit
  fi

  pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
  nohup python app.py & echo $! > app.pid
  echo "run app.py pid:$(cat app.pid)"
}

function stop() {
  if [ -e 'app.pid' ]; then
    pid=$(cat app.pid)
    rm -rf 'app.pid'
    for line in $(ps -ef|grep python|awk '{print $2}')
    do
      if [ $pid = $line ]; then
        echo "kill: $pid"
        kill $pid
      fi
    done
  fi
}

function status() {
    if [ -e 'app.id' ]; then
      pid=$(cat 'app.id')
      for line in $(ps -ef|grep python|awk '{print $2}')
      do
        if [ $pid = $line ]; then
          echo "app.py     ok    $pid"
        fi
      done
    fi
}

function main(){
  command=$1
  case command in
  'start')
    start
  ;;
  'stop')
    stop
  ;;
  'restart')
    stop
    start
  ;;
  'status')
    status
  ;;
  *)
    echo '--------------------------命令列表--------------------------'
    echo '|              start                    启动               |'
    echo '|              stop                     停止               |'
    echo '|              restart                  重启               |'
    echo '|              status                   状态               |'
    echo '-----------------------------------------------------------'
  ;;
}

# --------------------------

main $*
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/945665.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号