mcpField
C
configuration-management

configuration-management

github.com/aj-geddes开发373445 次安装34 周前更新
代码仓库

关于 configuration-management

面向开发者的应用配置管理指南,涵盖多环境配置、环境变量、文件、密钥、功能标志、验证及 12-Factor 实践。

主要功能

  1. 01管理不同环境的配置
  2. 02管理密钥与凭据
  3. 03构建配置层级
  4. 04功能标志与动态配置
  5. 05验证配置并遵循 12-Factor

适用场景

  1. 01设置开发与生产环境配置
  2. 02保护凭据和密钥
  3. 03逐步发布功能
  4. 04将配置迁移到云服务

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/aj-geddes/useful-ai-prompts --skill configuration-management

安装后在 Claude Code 中输入/configuration-management确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
12-factor-app-configuration.md
configuration-hierarchies.md
configuration-validation.md
dynamic-configuration-remote-config.md
environment-variables.md
feature-flags.md
secret-management.md
scripts/
validate-schema.sh
templates/
migration-template.sql

详细介绍

配置管理

目录

概述

全面介绍如何跨环境管理应用配置,包括环境变量、配置文件、机密、功能标志,以及遵循 12 因子应用方法论。

适用场景

  • 为不同环境设置配置
  • 管理机密和凭据
  • 实现功能标志
  • 创建配置层级
  • 遵循 12 因子应用原则
  • 将配置迁移到云服务
  • 实现动态配置
  • 管理多租户配置

快速入门

最小可运行示例:

# .env.development
NODE_ENV=development
PORT=3000
DATABASE_URL=postgresql://localhost:5432/myapp_dev
REDIS_URL=redis://localhost:6379
LOG_LEVEL=debug
API_KEY=dev-api-key-12345

# .env.production
NODE_ENV=production
PORT=8080
DATABASE_URL=${DATABASE_URL}  # From environment
REDIS_URL=${REDIS_URL}
LOG_LEVEL=info
API_KEY=${API_KEY}  # From secret manager

# .env.test
NODE_ENV=test
DATABASE_URL=postgresql://localhost:5432/myapp_test
LOG_LEVEL=error

参考指南

references/ 目录中的详细实现:

指南内容
环境变量环境变量
配置层级配置层级
机密管理机密管理
功能标志功能标志
12 因子应用配置12 因子应用配置
配置验证配置验证
动态配置(远程配置)动态配置(远程配置)

最佳实践

✅ 应该
  • 将配置存储在环境变量中
  • 为每个环境使用不同的配置文件
  • 在启动时验证配置
  • 使用机密管理器处理敏感数据
  • 切勿将机密提交到版本控制中
  • 提供合理的默认值
  • 记录所有配置选项
  • 使用类型安全的配置对象
  • 实现配置层级(基础配置 + 覆盖项)
  • 使用功能标志逐步发布
  • 遵循 12 因子应用原则
  • 为缺失的配置实现优雅降级
  • 缓存机密以减少 API 调用
❌ 不应该
  • 在源代码中硬编码配置
  • 提交包含真实机密的 .env 文件
  • 在不同服务中使用不同的配置格式
  • 以明文形式存储机密
  • 通过 API 暴露配置
  • 在开发环境中使用生产凭据
  • 忽略配置验证错误
  • 在各处直接访问 process.env
  • 将配置存储在数据库中(循环依赖)
  • 将配置与业务逻辑混在一起

评论

支持 Markdown