django項目:啟動腳本

位于項目根目錄下
run_project.sh

#!/bin/bash
#echo $0 文件名
#echo $1 端口號

is_work=1
# 判斷是否存在一個參數:端口號
if [ $# != '1' ]
then
    echo "缺少一個參數:端口號 "
    is_work=0
fi

# 定義運行函數
run_server(){
    #獲取端口號
    runport=$1

    # 判斷端口是否被占用,如果占用,殺死進程
    port_exit=$(netstat -anpt | grep $runport)
    if [ "$port_exit" ]
    then
        kill -s 9 `ps -ef|grep $runport | grep -v grep | head -2|awk '{print $2}'`
    fi

    # 判斷是否存在celery進程,如果存在,殺死進程
    celery_pid_list=$(ps -ef|grep celery | grep -v grep | head -2 | awk '{print $2}')
    if [ "$port_exit" ]
    then
        for celery_pid in $celery_pid_list
        do
            kill -s 9 $celery_pid
        done
    fi
    # 檢查安裝依賴包
    pip3 install -r requirements.txt
    # 數據庫遷移
    python3 manage.py makemigrations
    python3 manage.py migrate
    # 守護進程方式 啟動celery
    python3 manage.py celery multi start w1 -A QAPlatform  --loglevel=info
    # 啟動項目
    python3 manage.py runserver 0.0.0.0:$runport &
    echo "啟動成功"
}

if [ $is_work -eq '1' ]
then
    #執行啟動函數
    run_server $1
fi
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容