Centos下部署Flask

尝试在Centos6.5下部署Flask应用并成功,记录一下步骤,参数为什么这样配置还需要再研究uwsgi和Nginx才能回答。

Python版本升级2.7

测试机器centos6.5默认自带的python版本是2.6.6,因此需要升级。我们采用Anacond的方式进行升级。

升级过程:

  • 下载anaconda https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/ 下载Anaconda2-4.3.1-Linux-x86_64.sh
  • 拉到服务器,输入指令“bash Anaconda2-4.3.1-Linux-x86_64.sh”进行安装
  • 默认安装,安装的最后一个步骤中需要选择“prepend Anaconda install location to PATH in your /root/.bashrc",输入“YES”(必须)。
  • 安装完成后,输入命令更新环境变量bashrc "source /root/.bashrc"
  • 输入“python”,如果显示python的版本是2.7.13即可。

注意,上述安装使用的是root用户,其他用户可以参考类似配置。

部署准备

python下载工具包:

pip install flask
pip install uwsgi

下载Nginx

rpm -ivh http://nginx.org/packages/centos/6/noarch/RPMS/nginx-release-centos-6-0.el6.ngx.noarch.rpm
yum install nginx

上传代码文件到发布目录。

Flask应用中如涉及第三方的工具包及数据库关联也一并安装好。

参数配置

在发布目录下新增uwsgiconfig.ini配置文件,并输入

[uwsgi]
socket = 127.0.0.1:5001
chdir = /root/flask/flask_source/ #发布目录
wsgi-file = flask_source.py #入口文件
callable = app #应用名称
processes = 16
threads =32
stats = 127.0.0.1:9191

修改Nginx的配置参数,/etc/nginx/conf.d/default.conf

server {
    listen      80;
    server_name  192.168.2.24;

    #charset koi8-r;
    access_log  /root/test/access.log;
    error_log  /root/test/error.log;
    location / {
        include        uwsgi_params;
        uwsgi_pass    127.0.0.1:5001;
        uwsgi_param UWSGI_PYHOME /root/anaconda2/lib/python2.7;
        uwsgi_param UWSGI_CHDIR  /root/flask/flask_source/;
        uwsgi_param UWSGI_SCRIPT flask_source:app;

    }
}

运行

uwsgi uwsgiconfig.ini #在发布目录运行uwsgi
Ngnix
时间: 2024-12-14 18:04:37

Centos下部署Flask的相关文章

CentOS下实现Flask + Virtualenv + uWSGI + Nginx部署

一.项目简介 在本文中,将一步一步搭建一个简单的Flask + Virtualenv + uWSGI + Nginx 架构的Web服务,可以作为新手的学习也可作为记录备忘. 如果你安装好了环境并有一定基础可以直接从第五节开始部署. 项目中只是演示了浏览器访问地址,获得文本返回的过程,本人尽量把配置解释的清晰.基于搭建好的架构,后续可以将业务层(Python)进行扩展,本文不做研究 ,比如: 1.扩展业务代码:实现json.静态资源等等的请求响应. 2.基于业务的数据库查询和部署. 3.服务器端的

【服务器】CentOS下部署运行NodeJs Web App

NodeJs Web App测试完成后,要怎么部署呢?介绍两个不错的方案 已知以下情景: 我要为 「kenniu」这个项目做配置 它的入口文件在 「/path/to/entry.js」 运行的User和Group都是 MrKen node安装在了 /usr/bin/node 监听端口是2589 接下分别看这两种方案. 壹 | Fisrt 方案一:配置System,24小时保持在线 cd /etc/systemd/system/ sudo vi  kenniu.service    输入以下配置信

在centos下部署docker内网私服

Docker内网私服:docker-registry with nginx & ssl on centos docker-registry既然也是软件应用,自然最简单的方法就是使用官方提供的已经部署好的镜像registry.官方文档中也给出了建议,直接运行sudo docker run -p 5000:5000 registry命令.这样确实能启动一个registry服务器,但是所有上传的镜像其实都是由docker容器管理,放在了/var/lib/docker/....某个目录下.而且一旦删除容

在win10系统IIS下部署flask

参考了众多资料教程  很多都是转载 复制 .并没有实践吧   反正我参照了做 发现吭很多 所以特此记录. 测试系统:win7-32   win10-64 开启IIS  方法略 下载:Microsoft Web Platform Installer 搜url  和  cgi  安装 win10下  要修改注册表:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\InetStp\ 把右边MajorVersion的a改成9 再安装  不然提示本版过低  BUG吧  明明就是高

CentOS 下部署 ASP.NET Core环境

一.安装dotnet 1.下载运行环境 https://www.microsoft.com/net/download/linux 下载Runtime:https://go.microsoft.com/fwlink/?LinkID=825888 安装dotnet Runtime >yum install libunwind libicu > mkdir -p /opt/dotnet && tar zxf dotnet.tar.gz -C /opt/dotnet > ln -

如何在centos下部署Node环境

从今年开始,养车之家的PC 和 M端 的站点 ,服务器从tomcat全部改成了Node,无论在测试环境.准生产.正式环境,我们都需要在服务器进行Node的部署,在这里我给大家详细说明下Node在linux环境下是如何进行部署的. 1. 安装nodejs编译及依赖相关软件 curl -sL https://rpm.nodesource.com/setup | bash - 2. 安装Node yum install -y nodejs 3. 安装git npm install git -g 4.

window10下部署flask系统(apache和wsgi)

公司有一个小系统,通过url和其他系统进行数据交互(有点土). 因此,利用flask写了一个小程序. 现在,考虑到并发问题(flask自身是不会并发的),准备部署在apache+wsgi环境. 网上百度了半天,发现各种坑.自己还算幸运,两个小时基本搞定. 关键是找到了一片好文章,里面特别提到(apache,wsgi和python的版本一定要对应,apache和wsgi的编译器一定要一致) 1.安装apache. 我这里选择的版本,是64位的vc10编译的. 具体下载地址:http://www.a

windows servier2008+virtualenv下部署Flask (IIS+wfastcgi)

由于业务只有一台windows server2008的服务器,一般的nginx+uwsgi的部署方式不行,以下记录部署过程,本文参考自:https://www.cnblogs.com/xiaolecn/p/5111076.html 一.项目部署 1.服务器安装python3.6  :  根据自己系统位数下载安装: https://www.python.org/downloads/windows/ 由于python3.6已经安装好了pip,所以剩下的工作就简单了. 2.安装virtualenv虚拟

spring boot打包以及centos下部署

spring boot打包以及部署 一.打包 springboot的打包方式有很多种.有打成war的,有打成jar的,也有直接提交到github,通过jekins进行打包部署的.这里主要介绍如何打成jar进行部署.不推荐用war,因为springboot适合前后端分离,打成jar进行部署更合适. 需要在pom.xml中增加主程序入口 <build> <plugins> <plugin> <groupId>org.springframework.boot<