Flask 项目迁移部署

        由于项目要迁移出一个新项目,便把之前的项目clone一份部署在之前的开发服务器,省去创建git仓库,上传项目到仓库的步骤,期间遇到了小问题,git error: RPC failed; HTTP 413 curl 22 The requested URL returned error: 413 Request Entity Too Large,由于上传的项目有点大,通过http协议,请求体太大上传不了。便改成了ssh协议,上传自己的id_rsa.pub的内容到bitbucket的ssh keys管理那里,然后git push origin master就好啦!

        gunicorn配置如下:

import multiprocessing
import os
import gevent.monkey

gevent.monkey.patch_all()

bind = ":8000"
debug = False

loglevel = 'error'
# 访问日志
accesslog = "/dev/null"
# 错误日志
errorlog = "/var/log/gunicorn.log"
capture_output = True  # 影响代码中的print Redirect stdout/stderr to specified file in errorlog.
# 启动的进程数
workers = multiprocessing.cpu_count() * 3
worker_connections = 1000
worker_class = 'gevent'
reload = False
timeout = 120

命令行启动方式(可以指定端口):sudo gunicorn  manage:app  -c ./guni_conf.py -b 0.0.0.0:7000  --chdir . 1>/dev/null 2>&1 &



部署的新一套要改端口和errorlog:

启动新项目的gunicorn:sudo gunicorn  manage:app  -c ./guni_conf.py -b 0.0.0.0:7000  --chdir . 1>/dev/null 2>&1 &


=======nginx 配置如下

worker_processes  4;


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

pid        /var/run/nginx.pid;



events {

    worker_connections  1024;

}



http {

    include       /etc/nginx/mime.types;

    default_type  application/octet-stream;


    log_format  main  '$remote_addr - $remote_user [$time_local]==[$time_iso8601] "$request" '

                      '$status $body_bytes_sent "$http_referer" '

                      '"$http_user_agent" "$http_x_forwarded_for"';

   underscores_in_headers on;

   client_max_body_size 20M;


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


    sendfile        on;

    #tcp_nopush     on;


    keepalive_timeout  65;


    #gzip  on;


    include /etc/nginx/conf.d/*.conf;


    upstream frontends{

#        server 192.168.2.213:5000 max_fails=3 fail_timeout=20;

        server 127.0.0.1:7000 max_fails=3 fail_timeout=20;

    }

    server {

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

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


        listen 8000;

        #server_name shop-test;

       # charset     utf-8;

       # root        /opt/dist/;

       # index       index.html;


        location /api/v1.0 {

                proxy_connect_timeout 180s;

                proxy_send_timeout 180s;

                proxy_read_timeout   180s;

                proxy_set_header X-Real-IP $remote_addr;

                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

                proxy_set_header X-Forwarded-Proto $scheme;

                proxy_set_header Time-iso8601 $time_iso8601;

                proxy_set_header Time-local $time_local;

                proxy_pass http://frontends;

        }


    }


    upstream cv_frontends{

        server 127.0.0.1:7001 max_fails=3 fail_timeout=20;

    }

    server {

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

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


        listen 8001;

        #server_name shop-test;

       # charset     utf-8;

       # root        /opt/dist/;

       # index       index.html;


        location /api/v1.0 {

                proxy_connect_timeout 180s;

                proxy_send_timeout 180s;

                proxy_read_timeout   180s;

                proxy_set_header X-Real-IP $remote_addr;

                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

                proxy_set_header X-Forwarded-Proto $scheme;

                proxy_set_header Time-iso8601 $time_iso8601;

                proxy_set_header Time-local $time_local;

                proxy_pass http://cv_frontends;

        }


    }

    upstream ww_frontends{

        server 192.168.2.222:5000 max_fails=3 fail_timeout=20;

    }

    server {

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

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


        listen 8008;

        #server_name shop-test;

       # charset     utf-8;

       # root        /opt/dist/;

       # index       index.html;


        location /api/v1.0 {

                proxy_connect_timeout 180s;

                proxy_send_timeout 180s;

                proxy_read_timeout   180s;

                proxy_set_header X-Real-IP $remote_addr;

                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

                proxy_set_header X-Forwarded-Proto $scheme;

                proxy_set_header Time-iso8601 $time_iso8601;

                proxy_set_header Time-local $time_local;

                proxy_pass http://ww_frontends;

        }


    }

    server {

        listen 80;

        server_name admin203.thewemore.com;

        charset     utf-8;

        root        /opt/sc-web/;

        index       index.html;


        location / {

                proxy_set_header Host $http_host;

                proxy_set_header X-Real-IP $remote_addr;

                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

                proxy_set_header X-Forwarded-Proto $scheme;

                try_files $uri $uri/ /index.html;

        }

        location ~* .(svg|mp4|jpg|jpeg|png|gif|ico|css|js)$ {

            expires 1h;

            proxy_set_header Host $http_host;

            proxy_set_header X-Real-IP $remote_addr;

            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

            proxy_set_header X-Forwarded-Proto $scheme;

            try_files $uri $uri/ /index.html;

        }

    }


}


修改完nginx.conf ,      sudo nginx -t    ,   sudo nginx -s reload








白俊遥博客

打赏,支持一下

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

Powered by WEIXIA.XIN,学的不仅是技术,更是梦想!!!

Davidvivi博客
请先登录后发表评论
  • 最新评论
  • 总共 0条评论