从环境文件中读取环境变量

新手上路,请多包涵

我想在本地环境中运行通常在 Docker 容器中运行的 Python 脚本。 docker-compose.yml 指定了一个看起来(部分)如下的 env_file

 DB_ADDR=rethinkdb
DB_PORT=28015
DB_NAME=ipercron

为了在本地运行它,我希望将这些行转换为

os.environ['DB_ADDR'] = 'rethinkdb'
os.environ['DB_PORT'] = '28015'
os.environ['DB_NAME'] = 'ipercron'

我可以编写解析器,但我想知道是否有任何现有的模块/工具可以从配置文件中读取环境变量?

原文由 Kurt Peek 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 365
1 个回答

我使用 Python Dotenv 库。只需安装库 pip install python-dotenv ,使用您的环境变量创建一个 .env 文件,然后像这样在代码中导入环境变量:

 import os
from dotenv import load_dotenv

load_dotenv()

MY_ENV_VAR = os.getenv('MY_ENV_VAR')

.env 文件:

 MY_ENV_VAR="This is my env var content."

当我需要在我的 docker 系统之外测试代码并准备将其再次返回到 docker 时,我就是这样做的。

原文由 ParisNakitaKejser 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题