pull/632/head
Mr Chen 6 months ago
parent 31ac0c2542
commit b10e1ba8cc
  1. 58
      cli.sh
  2. 116
      new_cli.sh

@ -3,31 +3,31 @@ PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin:/opt/hom
DIR=$(cd "$(dirname "$0")"; pwd) DIR=$(cd "$(dirname "$0")"; pwd)
MDIR=$(dirname "$DIR") MDIR=$(dirname "$DIR")
export LC_ALL="en_US.UTF-8"
# echo $DIR
PATH=$PATH:$DIR/bin PATH=$PATH:$DIR/bin
if [ -f bin/activate ];then if [ -f ${DIR}/bin/activate ];then
source bin/activate source ${DIR}/bin/activate
if [ "$?" != "0" ];then if [ "$?" != "0" ];then
echo "load local python env fail!" echo "load local python env fail!"
fi fi
fi fi
export LC_ALL="en_US.UTF-8"
mw_start_task() mw_start_task()
{ {
isStart=$(ps aux |grep 'task.py'|grep -v grep|awk '{print $2}') isStart=$(ps aux |grep 'panel_task.py'|grep -v grep|awk '{print $2}')
if [ "$isStart" == '' ];then if [ "$isStart" == '' ];then
echo -e "starting mw-tasks... \c" echo -e "starting mw-tasks... \c"
cd $DIR && python3 task.py >> ${DIR}/logs/task.log 2>&1 & cd $DIR && python3 panel_task.py >> ${DIR}/logs/panel_task.log 2>&1 &
sleep 0.3 sleep 0.3
isStart=$(ps aux |grep 'task.py'|grep -v grep|awk '{print $2}') isStart=$(ps aux |grep 'panel_task.py'|grep -v grep|awk '{print $2}')
if [ "$isStart" == '' ];then if [ "$isStart" == '' ];then
echo -e "\033[31mfailed\033[0m" echo -e "\033[31mfailed\033[0m"
echo '------------------------------------------------------' echo '------------------------------------------------------'
tail -n 20 $DIR/logs/task.log tail -n 20 $DIR/logs/panel_task.log
echo '------------------------------------------------------' echo '------------------------------------------------------'
echo -e "\033[31mError: mw-tasks service startup failed.\033[0m" echo -e "\033[31mError: mw-tasks service startup failed.\033[0m"
return; return;
@ -39,34 +39,42 @@ mw_start_task()
} }
mw_start(){ mw_start(){
gunicorn -c setting.py app:app cd ${DIR}/web && gunicorn -c setting.py app:app
#安全启动 #安全启动
mw_start_task mw_start_task
} }
mw_start_debug(){ mw_start_debug(){
if [ ! -f $DIR/logs/task.log ];then if [ ! -f $DIR/logs/panel_task.log ];then
echo '' > $DIR/logs/task.log echo '' > $DIR/logs/panel_task.log
fi fi
python3 task.py >> $DIR/logs/task.log 2>&1 & python3 panel_task.py >> $DIR/logs/panel_task.log 2>&1 &
port=7200 port=7200
if [ -f /www/server/mdserver-web/data/port.pl ];then if [ -f /www/server/mdserver-web/data/port.pl ];then
port=$(cat /www/server/mdserver-web/data/port.pl) port=$(cat /www/server/mdserver-web/data/port.pl)
fi fi
if [ -f ${DIR}/data/port.pl ];then
port=$(cat ${DIR}/data/port.pl)
fi
# gunicorn -b :${port} -k gevent -w 1 app:app # gunicorn -b :${port} -k gevent -w 1 app:app
gunicorn -b :${port} -k geventwebsocket.gunicorn.workers.GeventWebSocketWorker -w 1 app:app cd ${DIR}/web && gunicorn -b :${port} -k eventlet -w 1 app:app
} }
mw_start_debug2(){ mw_start_panel(){
python3 task.py >> $DIR/logs/task.log 2>&1 & port=7200
gunicorn -b :7200 -k geventwebsocket.gunicorn.workers.GeventWebSocketWorker -w 1 app:app if [ -f ${DIR}/data/port.pl ];then
port=$(cat ${DIR}/data/port.pl)
fi
# cd ${DIR}/web && gunicorn -b :${port} -k geventwebsocket.gunicorn.workers.GeventWebSocketWorker -w 1 app:app
cd ${DIR}/web && gunicorn -b :${port} -k eventlet -w 1 app:app
} }
mw_start_debug3(){ mw_start_bgtask(){
gunicorn -c setting.py app:app cd ${DIR}/web && gunicorn -c setting.py app:app
python3 task.py cd ${DIR} && python3 panel_task.py
} }
@ -78,7 +86,7 @@ mw_stop()
kill -9 $i > /dev/null 2>&1 kill -9 $i > /dev/null 2>&1
done done
pids=`ps -ef|grep task.py | grep -v grep |awk '{print $2}'` pids=`ps -ef|grep panel_task.py | grep -v grep |awk '{print $2}'`
arr=($pids) arr=($pids)
for p in ${arr[@]} for p in ${arr[@]}
do do
@ -97,12 +105,12 @@ case "$1" in
mw_stop mw_stop
mw_start_debug mw_start_debug
;; ;;
'debug2') 'panel')
mw_stop mw_stop
mw_start_debug2 mw_start_panel
;; ;;
'debug3') 'task')
mw_stop mw_stop
mw_start_debug3 mw_start_bgtask
;; ;;
esac esac

@ -1,116 +0,0 @@
#!/bin/bash
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin:/opt/homebrew/bin
DIR=$(cd "$(dirname "$0")"; pwd)
MDIR=$(dirname "$DIR")
export LC_ALL="en_US.UTF-8"
# echo $DIR
PATH=$PATH:$DIR/bin
if [ -f ${DIR}/bin/activate ];then
source ${DIR}/bin/activate
if [ "$?" != "0" ];then
echo "load local python env fail!"
fi
fi
mw_start_task()
{
isStart=$(ps aux |grep 'panel_task.py'|grep -v grep|awk '{print $2}')
if [ "$isStart" == '' ];then
echo -e "starting mw-tasks... \c"
cd $DIR && python3 panel_task.py >> ${DIR}/logs/panel_task.log 2>&1 &
sleep 0.3
isStart=$(ps aux |grep 'panel_task.py'|grep -v grep|awk '{print $2}')
if [ "$isStart" == '' ];then
echo -e "\033[31mfailed\033[0m"
echo '------------------------------------------------------'
tail -n 20 $DIR/logs/panel_task.log
echo '------------------------------------------------------'
echo -e "\033[31mError: mw-tasks service startup failed.\033[0m"
return;
fi
echo -e "\033[32mdone\033[0m"
else
echo "starting mw-tasks... mw-tasks (pid $(echo $isStart)) already running"
fi
}
mw_start(){
cd ${DIR}/web && gunicorn -c setting.py app:app
#安全启动
mw_start_task
}
mw_start_debug(){
if [ ! -f $DIR/logs/panel_task.log ];then
echo '' > $DIR/logs/panel_task.log
fi
python3 panel_task.py >> $DIR/logs/panel_task.log 2>&1 &
port=7200
if [ -f /www/server/mdserver-web/data/port.pl ];then
port=$(cat /www/server/mdserver-web/data/port.pl)
fi
if [ -f ${DIR}/data/port.pl ];then
port=$(cat ${DIR}/data/port.pl)
fi
# gunicorn -b :${port} -k gevent -w 1 app:app
cd ${DIR}/web && gunicorn -b :${port} -k eventlet -w 1 app:app
}
mw_start_panel(){
port=7200
if [ -f ${DIR}/data/port.pl ];then
port=$(cat ${DIR}/data/port.pl)
fi
# cd ${DIR}/web && gunicorn -b :${port} -k geventwebsocket.gunicorn.workers.GeventWebSocketWorker -w 1 app:app
cd ${DIR}/web && gunicorn -b :${port} -k eventlet -w 1 app:app
}
mw_start_bgtask(){
cd ${DIR}/web && gunicorn -c setting.py app:app
cd ${DIR} && python3 panel_task.py
}
mw_stop()
{
PLIST=`ps -ef|grep app:app |grep -v grep|awk '{print $2}'`
for i in $PLIST
do
kill -9 $i > /dev/null 2>&1
done
pids=`ps -ef|grep panel_task.py | grep -v grep |awk '{print $2}'`
arr=($pids)
for p in ${arr[@]}
do
kill -9 $p > /dev/null 2>&1
done
}
case "$1" in
'start') mw_start;;
'stop') mw_stop;;
'restart')
mw_stop
mw_start
;;
'debug')
mw_stop
mw_start_debug
;;
'panel')
mw_stop
mw_start_panel
;;
'task')
mw_stop
mw_start_bgtask
;;
esac
Loading…
Cancel
Save