How to use Flask-Script and Gunicorn

前端 未结 7 588
[愿得一人]
[愿得一人] 2020-12-02 12:39

I\'m working on on a Flask app using Flask\'s built in dev server. I start it using Flask-Script. I want to switch to using Gunicorn as the web server. To do so, do I nee

7条回答
  •  夕颜
    夕颜 (楼主)
    2020-12-02 13:18

    Based on menghan's answer, receive all arguments from Application config.

    from flask_script import Command, Option
    
    
    class GunicornApp(Command):
    
        def get_options(self):
            from gunicorn.config import make_settings
    
            settings = make_settings()
            options = (
                Option(*klass.cli, dest=klass.name, default=klass.default)
                for setting, klass in settings.items() if klass.cli
            )
            return options
    
        def __call__(self, app=None, *args, **kwargs):
    
            from gunicorn.app.base import Application
            class FlaskApplication(Application):
                def init(self, parser, opts, args):
                    return kwargs
    
                def load(self):
                    return app
    
            FlaskApplication().run()
    

提交回复
热议问题