Centos下部署Flask

时间:2022-11-27 09:51:00

尝试在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

Centos下部署Flask的更多相关文章

  1. Linux CentOS下部署Java Web项目

    本文讲解如何在Linux CentOS下部署Java Web项目的步骤. 一.环境准备: (1)Linux CentOS (2)apache-tomcat-9.0.10 (3)XShell 二.启动t ...

  2. java部署系列:CentOS下部署Java7/Java8

    一.前言 1.本文主要内容 CentOS下部署OracleJDK CentOS下部署OpenJDK 2.适用范围与本篇环境 适用范围 1.CentOS 6+2.Java 7+ 本篇环境 1.CentO ...

  3. CentOS 下部署Nginx+Gunicorn+Supervisor部署Flask项目

    原本之前有一部分东西是在Windows Server,但是由于Gunicorn不支持Windows部署起来颇为麻烦.最近转战CentOS,折腾一段时间,终于简单部署成功.CentOS新手,作为一个总结 ...

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

    一.项目简介 在本文中,将一步一步搭建一个简单的Flask + Virtualenv + uWSGI + Nginx 架构的Web服务,可以作为新手的学习也可作为记录备忘. 如果你安装好了环境并有一定 ...

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

    NodeJs Web App测试完成后,要怎么部署呢?介绍两个不错的方案 已知以下情景: 我要为 「kenniu」这个项目做配置 它的入口文件在 「/path/to/entry.js」 运行的User ...

  6. 在centos下部署docker内网私服

    Docker内网私服:docker-registry with nginx & ssl on centos docker-registry既然也是软件应用,自然最简单的方法就是使用官方提供的已 ...

  7. centos下部署NTP时间服务器同步环境记录

    1)服务端部署 安装所需软件包 [root@test ~]# yum -y install ntp ntpdate 服务端自己先手工同步一次时间. [root@test ~]# ntpdate ntp ...

  8. CentOS下部署巡风步骤详解

    本博客已经迁移到新的网站,www.je2se.com,请大家移步关注,互相交流,共同成长 巡风Centos 6.5部署指南 基础环境要求: Python2.7+ 安装Centos相关依赖 # Cent ...

  9. centos服务器部署flask项目。

    已安装的环境nginx,python3,mysql,uwsgi,virtualenv 1,创建虚拟环境 virtualenv -p python3 myblog 2,进入虚拟环境 source myb ...

随机推荐

  1. HTML Meta标签

    Meta标签用于存储web页面上的信息.本质上讲,它是信息数据.他帮助浏览器和搜索引擎更好地知道.理解页面内容. Web开发者,通过Mata标签设置页面描述.作者或关键字等等.然而,许多meta标签功 ...

  2. XE3随笔7:可以省略的双引号

    在 JSON 中, 字符串应该在双引号中; 从上个例子才发现: 原来这个双引号可以省略, 有空格都行 当然只是在程序代码中可以省略, 对象会自动识别添加的. 即如此, 下面写法都可以: uses Su ...

  3. 我的第一篇博客--SQL小语句

    开通了博客,拥有了属于自己的小小天地.先写一篇今儿刚学到的 1 remove mirroring relationship alter database datab_name set partner ...

  4. oracle存储过程和存储函数&触发器

    oracle存储过程和存储函数 指存储在数据库*所有用户程序调用的子程序叫存储过程,存储函数 存储过程和存储函数的相同点:完成特定功能的程序 存储过程和存储函数的区别:是否用return语句返回值 ...

  5. shell 判断目录是否存在

    判断/data/www/logs/wos_log/crontab_log是否, 如果不存在则新建 if [ ! -d "/data/www/logs/wos_log/crontab_log& ...

  6. Oracle11g链接提示未“在本地计算机注册“OraOLEDB.Oracle”解决方法

    当 用,Provider=OraOLEDB.Oracle方式访问ORACLE11g数据库.出现 未在本地计算机注册“OraOLEDB.Oracle”提供程序提示.解决方案如下: 客户端环境:Win7 ...

  7. Albert Einstein

    Einstein always appeared to have a clear view of the problems of physics and the determination to so ...

  8. 10.23JS日记

    1.逻辑运算 ||  &&  ! ||:遇到第一个为true的值就中止并返回 &&:遇到第一个为false的值就中止并返回,如果没有false值,就返回最后一个不是fa ...

  9. cad2017卸载/安装失败/如何彻底卸载清除干净cad2017注册表和文件的方法

    cad2017提示安装未完成,某些产品无法安装该怎样解决呢?一些朋友在win7或者win10系统下安装cad2017失败提示cad2017安装未完成,某些产品无法安装,也有时候想重新安装cad2017 ...

  10. Oracle EBS OM 创建订单

    DECLARE l_header_rec OE_ORDER_PUB.Header_Rec_Type; l_line_tbl OE_ORDER_PUB.Line_Tbl_Type; l_action_r ...