通过命令行参数处理 Flask 配置?

Flask configuration handling via command line arguments?

我正在努力思考 Flask 中的配置处理。它似乎内置了很多东西,所以我怀疑它已经做了我想做的事,但我还没有看到任何做我想做的事的例子。

基本上我想为不同的环境(开发、生产等)定义配置文件并通过命令行切换到它们。

所以最终这就是我启动应用程序的方式:

gunicorn --log-level=debug --preload --worker-class gthread --workers 2 --bind :80 src.main:app

如何将参数传递给定义我的应用程序使用的配置文件的命令?现在我正在使用 configparser.ConfigParser() 并对配置文件的路径进行硬编码。

可以从 shell 环境中读取 Flask 配置。尝试像 CLI documentation 中那样设置值,如下所示:

export FLASK_DEBUG=1

运行 上面的命令在 gunicorn 命令之前,它应该很有魅力。