解锁环境变量在云原生应用中的各种姿势
应用程序在某些时刻总是需要一些外挂配置,云原生应用的实践是 在容器化之前就将应用程序配置保留在代码之外。 “ 12-Factors App :Store config in the environment ① 外挂配置文件:业务配置 appsettings.json “ 可以在代码中要求加载appsetting.serect.json配置文件,但是不加入代码版本管理==>敏感信息分离。 ② 环境变量: 单条业务配置(API_URL_PREFIX) 框架配置(ASPNETCORE_ENVIRONMENT=Production) 部署配置(Tag=v1.2) 敏感信息(AppId,AppAuthIssuer,AppSerect) 环境变量 现代操作系统均支持存储key-value环境变量,所有程序都能从OS获取特定环境变量。 ASP.NET Core默认脚手架:环境变量配置在第4位置插入 “ IConfiguration会拷贝环境变量键值对,后续同名配置会覆盖之前同名配置值,但是环境变量本身不会变化。 public static string? GetEnvironmentVariable(string variable); 环境变量来自三个级别:进程、用户、系统 // Specifies the location where an environment variable is