返回顶部
首页 > 资讯 > 精选 >Flask + Gunicorn + Nginx的部署方式
  • 597
分享到

Flask + Gunicorn + Nginx的部署方式

2023-06-04 11:06:21 597人浏览 独家记忆
摘要

本篇内容介绍了“flask + Gunicorn + Nginx的部署方式”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!WSGI容器——Gu

本篇内容介绍了“flask + Gunicorn + Nginx的部署方式”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

WSGI容器——Gunicorn

常用的WSGI容器有Gunicorn和uWSGI,但Gunicorn直接用命令启动,不需要编写配置文件,相对uWSGI要容易很多,所以这里我也选择用Gunicorn作为容器。

1

启动

$ gunicorn [options] module_name:variable_name

module_name对应python文件,variable_name对应WEB应用实例。
以最简单的flask应用为例:

#main.py

from flask import Flask

app = Flask(__name__)

 

@app.route('/')

def index():

    return 'hello world'

 

if __name__ == '__main__':

    app.run()

启动代码:

gunicorn --worker=3 main:app -b 0.0.0.0:8080

<td class="crayon-code" ">

# -*- coding: utf-8 -*-

import os

 

from . import create_app

import datetime

 

# Create an application instance that web servers can use. We store it as

# "application" (the wsgi default) and also the much shorter and convenient

# "app".

application = app = create_app('default')

 

@app.context_processor

def template_extras():

    """

    上下文处理装饰器,返回的字典的键可以在上下文中使用

    :return:

    """

    return {'enumerate': enumerate, 'len': len, 'datetime': datetime}

  • 在wsgi文件中创建flask实例给gunicorn使用。

  • 创建实例后,注册上下文装饰器。

再通过gunicorn启动flask应用:

gunicorn -b 127.0.0.1:8000 -k gevent -w 1 app.wsgi

安装

sudo apt-get install nginx

1

修改配置文件

先将配置文件备份:

cp /etc/nginx/sites-available/default /etc/nginx/sites-available/default.bak

然后修改配置文件:

server {

        listen 80;

        server_name _; # 外部地址

 

        location / {

                proxy_pass Http://127.0.0.1:8000;

                proxy_redirect     off;

                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;

        }

这里将Nginx设置为代理模式,代理到本地的8000端口,之后就可以通过公网访问flask应用了。

<h3 id="toc_9" color:#2E2E2E;white-space:nORMal;background-color:#FFFFFF;">总结

最后,总结下这几个部分的关系:

Flask + Gunicorn + Nginx的部署方式
(nginx收到客户端发来的请求,根据nginx中配置的路由,将其转发给WSGI)
nginx:”WSGI,找你的来了!”
(WSGI服务器根据WSGI协议解析请求,配置好环境变量,调用start_response方法呼叫flask框架)
WSGI服务器:”flask,快来接客,客户资料我都给你准备好了!”
(flask根据env环境变量,请求参数和路径找到对应处理函数,生成html)
flask:”!@#$%^……WSGI,html文档弄好了,拿去吧。”
(WSGI拿到html,再组装根据env变量组装成一个http响应,发送给nginx)
WSGI服务器:”nginx,刚才谁找我来着?回他个话,!@#$%^…..”
(nginx再将响应发送给客户端)

“Flask + Gunicorn + Nginx的部署方式”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注编程网网站,小编将为大家输出更多高质量的实用文章!

--结束END--

本文标题: Flask + Gunicorn + Nginx的部署方式

本文链接: https://lsjlt.com/news/237603.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Flask + Gunicorn + Nginx的部署方式
    本篇内容介绍了“Flask + Gunicorn + Nginx的部署方式”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!WSGI容器——Gu...
    99+
    2023-06-04
  • gunicorn怎么部署flask
    Gunicorn部署Flask应用的步骤如下:1、在终端或命令行中输入“pip install gunicorn”命令来安装Gunicorn;2、创建Flask应用;3、在终端或命令行中输入“flask run”命令来启动Flask应用程序...
    99+
    2023-12-19
    Flask gunicorn部署flask gunicorn
  • Nginx Gunicorn flask项目部署思路分析详解
    目录部署目的部署思路gunicorn启动flasknginx指向gunicorn部署目的 之前聊了很多flask的知识点,那么完成一个flask项目之后,该这么让大家使用呢,直接放...
    99+
    2022-12-08
    Nginx Gunicorn flask部署 Nginx 项目部署
  • Flask应用的Gunicorn部署指南
    如何使用Gunicorn部署Flask应用? Flask是一个轻量级的Python Web框架,被广泛应用于开发各种类型的Web应用。而Gunicorn(Green Unicorn)是一个基于Python的HTTP服务器,用于运...
    99+
    2024-01-17
    Flask gunicorn 部署
  • 使用gunicorn部署Flask项目
    [*] 本文出处:http://b1u3buf4.xyz/ [*] 本文作者:B1u3Buf4 [*] 本文授权:禁止转载 从自己的博客移动过来。 gunicorn是一个python Wsgi的WEB服务框架,只支持在Unix系...
    99+
    2023-01-30
    项目 gunicorn Flask
  • Flask  使用Gunicorn部署服务介绍
    前言: 在开发时,我们使用flask run命令启动开发服务器运行应用,该服务器是由 Werkzeug 提供的,但是该服务器性能比较低,只能供开发测试用来调试使用,生产环境不建议直...
    99+
    2024-04-02
  • Gunicorn和Flask的优化部署:提升部署方案的最佳实践
    Gunicorn和Flask的最佳实践:如何优化你的部署方案? 引言:Gunicorn是一个高性能的Python WSGI服务器,而Flask是一个轻量级的Python Web框架。二者的结合可以帮助开发者快速构建高效的Web应...
    99+
    2024-01-17
    Flask gunicorn 部署。
  • Flask使用Gunicorn部署服务是怎样的
    本篇文章为大家展示了Flask使用Gunicorn部署服务是怎样的,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。在开发时,我们使用flask run命令启动开发服务器运行应用,该服务器是由 Werk...
    99+
    2023-06-21
  • 部署Gunicorn和Flask的无懈可击的组合
    Gunicorn和Flask:完美的部署组合,需要具体代码示例 概述:对于开发者来说,选择适合的部署方式是非常重要的,尤其是对于Python的Web应用程序而言。在Python的Web框架中,Flask是非常流行的选择,而Gun...
    99+
    2024-01-17
    Flask gunicorn 部署
  • Docker如何部署Nginx+Flask+Mongo
    小编给大家分享一下Docker如何部署Nginx+Flask+Mongo,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!使用Doc...
    99+
    2024-04-02
  • 比较Flask应用部署的Gunicorn和uWSGI性能对比
    Flask应用部署:Gunicorn vs uWSGI的比较 引言:Flask作为一种轻量级的Python Web框架,受到了很多开发者的喜爱。在将Flask应用部署到生产环境时,选择适合的服务器网关接口(Server Gate...
    99+
    2024-01-17
    Flask gunicorn uwsgi
  • Gunicorn Django部署配置方法
    1. 简单部署 1. sudo pip3 install gunicorn 2. cd 到django项目中 sudo python3 manage.py migrate 3.启动服务:sudo python3 m...
    99+
    2022-06-04
    Gunicorn Django 部署 Django部署
  • 在CentOS上配置Nginx+Gunicorn+Python+Flask环境的教程
    Python基础环境搭建 CENTOS 6.X 系列默认安装的 Python 2.6 ,目前开发中主要是使用 Python 2.7 ,这两个版本之间还是有不少差异的,程序在 Python 2.6 下经常会出...
    99+
    2022-06-04
    环境 教程 Nginx
  • python flask部署的方法是什么
    Python Flask的部署方法有多种,以下是其中几种常用的方法:1. 使用WSGI服务器部署:Flask应用可以使用WSGI服务...
    99+
    2023-08-14
    python flask
  • Nginx集群部署方案
    工作需要,记录一下 一、Nginx安装 集群部署需要在主服务器安装Nginx服务,以下为安装步骤: 1.访问Nginx官网(http://nginx.org/en/download.html),下载Nginx安装包。 2.下载后解压至C盘...
    99+
    2023-09-08
    服务器 nginx 运维
  • DockerCompose部署Nginx的方法步骤
    使用Docker Compose部署Nginx,创建docker-compose.yaml: [root@192 ~]# vim docker-compose.yaml 输入以下内容...
    99+
    2024-04-02
  • 提升Flask应用性能的方法:使用Gunicorn
    Gunicorn如何提高Flask应用的性能? 随着互联网的快速发展,Web应用程序的性能对于用户体验和企业竞争力变得越来越重要。在处理高并发请求时,Flask框架默认的开发服务器往往无法满足需求。因此,我们需要使用Gunico...
    99+
    2024-01-17
    Flask gunicorn 性能提高
  • 简单易懂的Flask应用部署方法
    简单易懂的Flask应用部署方法 引言:Flask是一个简单易用的Python web框架,它可以帮助开发者快速构建web应用程序。但是,仅仅在本地运行Flask应用是不够的,我们还需要将应用部署到服务器上,让更多用户可以访问我...
    99+
    2024-01-19
    Flask 应用部署 简单易懂
  • Docker上部署Nginx的方法步骤
    目录1.从 docker 下载 Nginx 镜像2.创建挂载目录3.为了保证文件的正确性,建议先进入容器把对应的文件给复制出来4.接下来修改下 default.conf 文件就好了5...
    99+
    2024-04-02
  • k8s部署ingress-nginx的方法步骤
    目录前言一、部署配置Ingress二、使用https前言 k8s集群服务部署好之后,需要对外提域名访问,这时候就需要ingress-nginx了,今天来给大家分享一下 一、部署配...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作