flask后端部署

测试环境部署方式,按步骤执行

  1. 下载 centos7 镜像 镜像地址 DVD版本

  2. 虚拟机安装centos7, 安装完成后reboot首先尝试

        ping www.baidu.com

不能ping通的话,参照方法解决

能ping通之后,参照ssh远程连接完成远程连接

tips:

虚拟机网络采用NAT模式,远程连接工具:mobaXterm

装完的centos查看ip的命令为 ip add, 主机 ping 虚拟机时会用到

ssh 连接方式:

```shell
    ssh root@<虚拟机ip>
```
  1. 更换下载源站

tips:我们下载的阿里的镜像源站本来就是阿里,不需要替换

  1. 更换完源站后首先执行

        yum update
  2. 安装 python3.5.2

tips:

注意看一下版本,链接里面的版本是3.5.1, 要改成3.5.2

软连接命令 In -s 的时候文件路径有问题前一个路径/usr/local/python3应该为/usr/local/python3.5/bin/xxxx,两行命令都改

不会使用vi的建议使用gedit命令

vi /usr/libexec/urlgrabber-ext-down 这个文件第一行也要改成python2.7

  1. yum 安装 mongo 只看第一种 yum install 的方式

  2. yum install influxDB

  3. 更换 pip install 源站 推荐用 pip.conf的方式

  4. 还原python环境

    第一步: 在mobaXterm中切换到 /root 目录,把 requirements.txt 文件拖进该目录

    第二步:

        cd $HOME
        pip install -r requirements.txt
  5. 关闭系统防火墙

service firewalld stop
setenforce 0
vim /etc/selinux/config

将SELINUX=enforcing改为SELINUX=disabled

  1. 配置 nginx + uwsgi web后端测试环境

tips: 做以下操作之前,先用 python -V 命令,确保 python 版本为 3.5

yum install epel-release
yum install python-devel nginx gcc
curl http://uwsgi.it/install | bash -s default /tmp/uwsgi
ln -s /tmp/uwsgi /usr/bin/uwsgi
  1. 测试 nginx + uwsgi + flask 可用
cd /home/<your_user_path>
mkdir test
cd test
vim test.py

粘贴测试用 flask app:

from flask import Flask
app = Flask(__name__)

@app.route("/")
def hello():
    return "<h1 style='color:blue'>Hello There!</h1>"

if __name__ == "__main__":
    app.run(host='0.0.0.0')
vim wsgi.py

粘贴以下代码:

from myproject import app

if __name__ == "__main__":
    app.run()

编辑 wsgi 配置文件:

vim test.ini

复制以下代码并修改 < your_user_path >:

[uwsgi]
# uwsgi 启动时所使用的地址与端口
socket = 127.0.0.1:8000
# 指向网站目录
chdir = /home/<your_user_path>/test
# python 启动程序文件
wsgi-file = wsgi.py
# python 程序内用以启动的 application 变量名
callable = app
# 处理器数
processes = 5
# 线程数
threads = 2
#状态检测地址
stats = 127.0.0.1:9191

编写 wsgi app 后台启动 service 文件

vim /etc/systemd/system/test.service

复制以下代码并修改 < your_user_path >:

[Unit]
Description=uWSGI instance to serve myproject

[Service]
WorkingDirectory=/home/<your_user_path>/test
ExecStart=/usr/bin/uwsgi --ini test.ini

[Install]
WantedBy=multi-user.target

然后执行:

service test start

更改 nginx 配置

vim /etc/nginx/nginx.conf

在 http 属性下添加并修改 < your_user_path > 和 <虚拟机ip> :

    server {
        listen 8888;
        server_name <虚拟机ip>;

        location / {
            include uwsgi_params;
            uwsgi_pass 127.0.0.1:8000;
            uwsgi_param UWSGI_CHDIR  /home/<your_user_path>/test;
            uwsgi_param UWSGI_SCRIPT wsgi:app;
        }
    }

然后执行:

service nginx restart

最后用本机浏览器访问 <虚拟机ip地址:8888> , 最后显示 hello there 则 部署成功

mongo 基本使用资料:

菜鸟教程

mongo文档

mongo python client 菜鸟基础教程

PyMongo官方文档

influxDB介绍及使用样例

influxDB Python client

influxDB Python Flask extension

Mongo Python Flask extension

Nginx + uWSGI + Flask 参考

猜你喜欢

转载自www.cnblogs.com/rise0111/p/11313216.html