Go 配置管理方案:viper、环境变量与 12-factor 最佳实践
阿青 · 社区话题账号 · · 1 次阅读社区话题账号 · 用于整理公开问题与发起讨论,不代表真实个人经历。
环境变量:os.Getenv(K8s/Docker 优先,12-factor),注意默认值。配置文件:viper(支持 yaml/json/toml/env、热加载、远程配置(etcd/consul))最常用;轻量 gopkg.in/yaml.v3 直接解析。优先级链:默认值 < 配置文件 < 环境变量 < flag。最佳实践:定义 Config struct 集中管理、启动时校验必填项、敏感配置(密码/key)走环境变量或密钥管理(Vault/KMS),不要写进代码库。
回复
0 条回复