pm2啓動python應用

pm2啓動python應用-實例

server.py代碼段修改
  • server.py路徑:/data/source/projectname_env/src
import os,sys  
from ailayout import settings  
src_dir = os.path.dirname(os.path.realpath(__file__))  
settings.WORKDIR = os.path.dirname(src_dir)

########################添加port1變量####################  
try:  
    port1 = sys.argv[1]  
except IndexError:  
    port1 = False
############當port1爲空時設置port1爲:False###############
  
from ailayout.server import app  
def main():  
    # app.debug =True  
    if sys.platform == 'win32':  
        # app.run(host='127.0.0.1', port=80)  
        app.run(host='0.0.0.0', port=80)  
    else:  
################判斷port1是否問True###################
        if port1:  
            app.run(host='0.0.0.0', port=port1)  
        else:  
            app.run(host='0.0.0.0', port=5001)
#####################################################
if __name__ == '__main__':  
    main()

python應用pm2-app.json配置


{
    "apps": [
        {
            "args": "5001",
            "cwd": "/tmp/ailayout_std",
            "error_file": "/data/pm2-log/errlogs/ailayout-err1.log",
            "exec_interpreter": "/usr/bin/python",
            "exec_mode": "fork",
            "instances": 1,
            "log_date_format": "YYYY-MM-DD HH:mm Z",
            "max_restarts": "50",
            "merge_logs": true,
            "min_uptime": "20s",
            "name": "ailayout_std1",
            "out_file": "/data/pm2-log/outlogs/ailayout_std-out1.log",
            "pid_file": "/data/pm2-log/outlogs/ailayout_std1.pid",
            "script": "/tmp/ailayout_std/src/server.py",
            "watch": false
        },
        {
            "args": "5002",
            "cwd": "/tmp/ailayout_std",
            "error_file": "/data/pm2-log/errlogs/ailayout-err2.log",
            "exec_interpreter": "/usr/bin/python",
            "exec_mode": "fork",
            "instances": 1,
            "log_date_format": "YYYY-MM-DD HH:mm Z",
            "max_restarts": "50",
            "merge_logs": true,
            "min_uptime": "20s",
            "name": "ailayout_std2",
            "out_file": "/data/pm2-log/outlogs/ailayout_std-out2.log",
            "pid_file": "/data/pm2-log/outlogs/ailayout_std2.pid",
            "script": "/tmp/ailayout_std/src/server.py",
            "watch": false
        },
        {
            "args": "5003",
            "cwd": "/tmp/ailayout_std",
            "error_file": "/data/pm2-log/errlogs/ailayout-err3.log",
            "exec_interpreter": "/usr/bin/python",
            "exec_mode": "fork",
            "instances": 1,
            "log_date_format": "YYYY-MM-DD HH:mm Z",
            "max_restarts": "50",
            "merge_logs": true,
            "min_uptime": "20s",
            "name": "ailayout_std3",
            "out_file": "/data/pm2-log/outlogs/ailayout_std-out3.log",
            "pid_file": "/data/pm2-log/outlogs/ailayout_std3.pid",
            "script": "/tmp/ailayout_std/src/server.py",
            "watch": false
        }

    ]    
}
"script": "/tmp/ailayout_std/src/server.py" ##須要執行的python文件 "exec_interpreter": "/usr/bin/python" ##python的環境文件 "args": "5003" ###是server.py 的參數
相關文章
相關標籤/搜索