Flask+nginx+gunicorn在腾讯云服务器上的部署

项目部署之前, 服务器操作系统为 Ubuntu Server 16.04.1 LTS 64位,新系统,任何东西都没有装。
1、安装nginx(sudo apt-get update,sudo apt-get indtall nginx)、
      安装gunicorn(sudo apt-get install gunicorn)、
     安装python3(sudo apt-get install python3-pip )若是python2(,sudo apt-get install python-pip)
     安装flask(pip install flask)、
2、新建了一个目录python_test,并且在该目录下新建test.py.

        内容为Hello world!

        

from flask import Flask

app = Flask(__name__)


@app.route('/')
def hello_world():
    return 'Hello World!'


if __name__ == '__main__':

app.run()

3、更改nginx的default配置。(如果不能确定自己能一步到位找到default文件,不妨使用cd命令一步一步的找到)

sudo vim default,打开default文件进行编辑。

将如下内容覆盖default内容

upstream flask_server {

       # swap the commented lines below to switch between socket and port

       #server unix:/tmp/gunicorn_flask.sock fail_timeout=0;

       server 127.0.0.1:8080;

    }

server {

   listen 80;

   server_name 你的服务器网址;

   access_log /var/log/nginx/access.log;

   error_log /var/log/nginx/error.log;

   location / {

       proxy_pass        http://flask_server;

       proxy_redirect     off;

       proxy_set_header   Host             $host;

        proxy_set_header   X-Real-IP        $remote_addr;

       proxy_set_header  X-Forwarded-For $proxy_add_x_forwarded_for;

       if (!-f $request_filename) {

                proxy_pass http://flask_server;

                break;

           }

    }

}

要特别注意分号什么的不能忘记,否则,之后重启nginx服务之后,可能会出现如下的错误:

       

4、配置default之后,重启nginx服务。使用 /etc/init.d/nginx restart

5、进入test.py所在的文件夹。即python_test。在该目录下,使用指令

                      gunicorn  -w 4 -b 127.0.0.1:8080 test:app

6、打开公网地址可以看到项目已经部署好

参考文档:https://www.jianshu.com/p/837164e9f724

猜你喜欢

转载自blog.csdn.net/mu66mu/article/details/79578787