flask+vue+nginx+uwsgi项目部署

1.背景

这次部署flask+vue项目在网上找了很多的资料,说实话我当时就特别想吐槽为什么自己部署的都不知道是什么玩意的还要写博客呢,看的我是很头疼。不过最后项目还是部署起来了,所以想着自己写一个这个博客,来帮助有需要的人。有啥不足的或者理解不到位的地方,有请各位大佬提出!

2.项目部署前说明

本次项目采用的技术是前后端分离的部署架构,前段采用vue后端采用flask。

前端部署采用nginx后端采用uwsgi

本次主要讲解部署流程

3.前端部署

nginx下载安装:自己网上找资料,主要就是nginx的配置文件

server {
        listen       8071;通过这个端口访问
        server_name  101.42.104.248;
        #此处是前端的请求
        location / {
            root /home/intelligent_evaluation_of_rock_burst/end_project/front/dist;
            #前段项目的打包路径,打包方式 npm run serve
            index index.html index.htm;#前端文件打包生成的index.html
        }
        #动态请求 这个是后端的请求
        location /api{
          include uwsgi_params;
          uwsgi_pass 127.0.0.1:5000;//后端服务的server
        }

        # Load configuration files for the default server block.
        include /etc/nginx/default.d/*.conf;

        error_page 404 /404.html;
        location = /404.html {
        }

        error_page 500 502 503 504 /50x.html;
        location = /50x.html {
        }
    }

nginx的命令

nginx -s reload //重新加载nginx
nginx -t  测试nginx  如果成功会有suucessfully的提示

4.后端部署

首先通过pip install uwsgi下载uwsgi

下载完成后配置软链接

root@localhost ~]# ln -s /usr/local/python3/bin/uwsgi /usr/bin/uwsgi
ln: 创建符号链接 "/usr/bin/uwsgi": 文件已存在
[root@localhost ~]# whereis uwsgi
uwsgi: /usr/bin/uwsgi
[root@localhost ~]# uwsgi
uwsgi: error while loading shared libraries: libpcre.so.1: cannot open shared object file: No such file or directory

配置uwsgi文件

#以下为添加操作
[uwsgi]
socket=0.0.0.0:5000 # 可配置成别的端口
chdir=/home/intelligent_evaluation_of_rock_burst/end_project/back/ #项目路径
wsgi-file=/home/intelligent_evaluation_of_rock_burst/end_project/back/run.py #项目启动文件
callable=app
processes=4
threads=10
master=true
#virstualenv = python虚拟环境路径  (如果没有配置虚拟环境,则不用)
daemonize=/home/intelligent_evaluation_of_rock_burst/end_project/back/uwsgi.log #指定uwsgi日志存储位置,没有这个文件夹的话先进行创建
buffer-size=32768

启动uwsgi

uwsgi --ini uwsgi.ini

5.以上配置都完成后则通过项目服务器的端口和IP可以正常的访问项目

注意:本次配置环境为centos7,如有不详之处可以提建议,也可以联系本人。

你可能感兴趣的:(学习笔记,flask,nginx,vue.js)