Dynaconf 开源项目教程

随笔3个月前发布 余生漫
45 0 0

Dynaconf 开源项目教程

dynaconfdynaconf/dynaconf: 是一个 Python 配置管理库,可以方便地实现配置的统一管理和发布。该项目提供了一个简单易用的配置管理库,可以方便地实现配置的统一管理和发布,同时支持多种配置格式和部署方式。项目地址:https://gitcode.com/gh_mirrors/dy/dynaconf

1. 项目的目录结构及介绍

Dynaconf 是一个用于 Python 应用的配置管理工具,其项目目录结构清晰,便于理解和使用。以下是 Dynaconf 项目的主要目录结构及其介绍:

  1. dynaconf/

  2. ├── dynaconf/

  3. │ ├── __init__.py

  4. │ ├── base.py

  5. │ ├── constants.py

  6. │ ├── default_settings.py

  7. │ ├── loaders/

  8. │ │ ├── __init__.py

  9. │ │ ├── redis_loader.py

  10. │ │ ├── vault_loader.py

  11. │ │ └── ...

  12. │ ├── utils.py

  13. │ └── ...

  14. ├── tests/

  15. │ ├── __init__.py

  16. │ ├── test_core.py

  17. │ ├── test_loaders.py

  18. │ └── ...

  19. ├── .gitignore

  20. ├── LICENSE

  21. ├── README.md

  22. ├── setup.py

  23. └── ...

  • dynaconf/: 核心代码目录,包含了 Dynaconf 的主要功能实现。
    • __init__.py: 模块初始化文件。
    • base.py: 定义了配置对象的基础类。
    • constants.py: 包含了一些常量定义。
    • default_settings.py: 默认配置文件。
    • loaders/: 配置加载器目录,支持多种配置源的加载。
    • utils.py: 工具函数集合。
  • tests/: 测试代码目录,包含了各种测试用例。
  • .gitignore: Git 忽略文件配置。
  • LICENSE: 项目许可证文件。
  • README.md: 项目说明文档。
  • setup.py: 项目安装脚本。

2. 项目的启动文件介绍

Dynaconf 项目的启动文件主要是 setup.py,它负责项目的安装和分发。以下是 setup.py 的主要内容:

  1. from setuptools import setup, find_packages

  2. setup(

  3. name='dynaconf',

  4. version='2.2.3',

  5. description='Configuration Management for Python.',

  6. long_description=open('README.md').read(),

  7. long_description_content_type='text/markdown',

  8. author='Bruno Rocha',

  9. author_email='rochacbruno@gmail.com',

  10. url='https://github.com/dynaconf/dynaconf',

  11. packages=find_packages(),

  12. install_requires=[

  13. # 依赖列表

  14. ],

  15. classifiers=[

  16. 'Development Status :: 5 - Production/Stable',

  17. 'Intended Audience :: Developers',

  18. 'License :: OSI Approved :: MIT License',

  19. 'Programming Language :: Python :: 3',

  20. 'Programming Language :: Python :: 3.6',

  21. 'Programming Language :: Python :: 3.7',

  22. 'Programming Language :: Python :: 3.8',

  23. 'Programming Language :: Python :: 3.9',

  24. ],

  25. )

  • name: 项目名称。
  • version: 项目版本。
  • description: 项目简短描述。
  • long_description: 项目详细描述,通常从 README.md 文件读取。
  • author: 项目作者。
  • url: 项目仓库地址。
  • packages: 需要包含的包。
  • install_requires: 项目依赖列表。
  • classifiers: 项目分类信息。

3. 项目的配置文件介绍

Dynaconf 支持多种配置文件格式,包括 toml, yaml, ini, json, py 等。以下是一个典型的 settings.toml 配置文件示例:

  1. [default]

  2. username = "admin"

  3. port = 5555

  4. database = {name='mydb', schema='main'}

  5. [development]

  6. username = "dev_user"

  7. port = 8000

  8. [production]

  9. username = "prod_user"

  10. port = 8080

  • [default]: 默认配置节,包含所有环境通用的配置。
  • [development]: 开发环境配置节,覆盖默认配置。
  • [production]: 生产环境配置节,覆盖默认配置。

此外,Dynaconf 还支持敏感信息的配置,通常存储在 secrets.toml 文件中

dynaconfdynaconf/dynaconf: 是一个 Python 配置管理库,可以方便地实现配置的统一管理和发布。该项目提供了一个简单易用的配置管理库,可以方便地实现配置的统一管理和发布,同时支持多种配置格式和部署方式。项目地址:https://gitcode.com/gh_mirrors/dy/dynaconf

© 版权声明

相关文章

暂无评论

您必须登录才能参与评论!
立即登录
暂无评论...