vault backup: 2026-06-03 10:30:42
This commit is contained in:
+22
-19
@@ -1,10 +1,17 @@
|
||||
# 15. 配置级联机制
|
||||
|
||||
> **一句话概括**:Viper 三层配置级联 — YAML 文件 -> 环境变量 -> 默认值,一处配置随处运行。
|
||||
|
||||
---
|
||||
tags: [config, viper, environment-variables, yaml, deployment, configuration-management]
|
||||
create time: 2026-06-03 11:10
|
||||
---
|
||||
|
||||
## 配置加载流程
|
||||
# 15. 配置级联机制
|
||||
|
||||
## 概述
|
||||
|
||||
Viper 三层配置级联 — YAML 文件 -> 环境变量 -> 默认值,一处配置随处运行。
|
||||
|
||||
## 正文
|
||||
|
||||
### 配置加载流程
|
||||
|
||||
```mermaid
|
||||
flowchart LR
|
||||
@@ -41,7 +48,7 @@ flowchart LR
|
||||
|
||||
---
|
||||
|
||||
## 配置结构体
|
||||
### 配置结构体
|
||||
|
||||
```go
|
||||
type Config struct {
|
||||
@@ -73,7 +80,7 @@ type Config struct {
|
||||
|
||||
---
|
||||
|
||||
## 环境变量绑定
|
||||
### 环境变量绑定
|
||||
|
||||
每个配置字段都有对应的环境变量绑定,命名规则为 `GEN2D_` 前缀 + 大写下划线格式:
|
||||
|
||||
@@ -104,7 +111,7 @@ func bindEnvVars(v *viper.Viper) {
|
||||
|
||||
---
|
||||
|
||||
## 使用场景
|
||||
### 使用场景
|
||||
|
||||
```mermaid
|
||||
flowchart TD
|
||||
@@ -140,12 +147,12 @@ flowchart TD
|
||||
|
||||
---
|
||||
|
||||
## 加载过程详解
|
||||
### 加载过程详解
|
||||
|
||||
```mermaid
|
||||
sequenceDiagram
|
||||
participant Main as main.go
|
||||
participant Viper
|
||||
participant Viper as Viper
|
||||
participant YAML as config.yaml
|
||||
participant ENV as 环境变量
|
||||
participant Cfg as Config Struct
|
||||
@@ -175,7 +182,7 @@ sequenceDiagram
|
||||
|
||||
---
|
||||
|
||||
## 与部署的关系
|
||||
### 与部署的关系
|
||||
|
||||
配置级联机制与部署架构紧密配合:
|
||||
|
||||
@@ -185,13 +192,9 @@ sequenceDiagram
|
||||
| `docker compose` | `.env` 文件注入 | `env_file: ./backend/.env` |
|
||||
| Kubernetes | ConfigMap + Secret | `GEN2D_DSN` 从 Secret 注入 |
|
||||
|
||||
---
|
||||
|
||||
## 关联文档
|
||||
|
||||
| 文档 | 关系 |
|
||||
|------|------|
|
||||
| [14 - 部署架构](14-deployment.md) | 配置管理在部署中的应用 |
|
||||
| [01 - 系统总览](01-system-overview.md) | 配置在启动流程中的位置 |
|
||||
| [02 - 协程池](02-worker-pool.md) | WorkerPoolConfig 控制并发参数 |
|
||||
| [00 - 索引](00-index.md) | 返回文档总览 |
|
||||
- [[14-部署架构]] — 配置管理在部署中的应用
|
||||
- [[01-系统总览]] — 配置在启动流程中的位置
|
||||
- [[02-协程池]] — WorkerPoolConfig 控制并发参数
|
||||
- [[00-索引]] — 返回文档总览
|
||||
|
||||
Reference in New Issue
Block a user