-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path.env.example
More file actions
65 lines (55 loc) · 2.47 KB
/
Copy path.env.example
File metadata and controls
65 lines (55 loc) · 2.47 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
# 一脉 Axon 统一运维控制面 —— 环境变量示例
# 复制为 .env 后按需修改。.env 已被 .gitignore 忽略,勿提交真实密钥。
# 后端全部配置项前缀为 YIMAI_(见 backend/app/core/config.py)。
# ============ docker-compose 编排用(compose 直接读取,无 YIMAI_ 前缀)============
# postgres 账号/库名/端口(compose 内 postgres 服务与后端连接串共用)
POSTGRES_USER=yimai
POSTGRES_PASSWORD=yimai
POSTGRES_DB=yimai
POSTGRES_PORT=5432
REDIS_PORT=6379
# 各服务对外暴露端口(改这里即可避开本机端口冲突)
API_PORT=8000
FRONTEND_PORT=5173
FLOWER_PORT=5555
PROMETHEUS_PORT=9090
ALERTMANAGER_PORT=9093
GRAFANA_PORT=3000
GRAFANA_USER=admin
GRAFANA_PASSWORD=admin
# ============ 后端应用配置(YIMAI_ 前缀,api/worker/beat 容器读取)============
# 运行环境:dev | staging | prod
YIMAI_ENV=dev
YIMAI_DEBUG=false
# --- 数据库 ---
# 默认 PostgreSQL(生产)。切库见 docs/使用与部署.md「切换数据库」章节。
# PostgreSQL: postgresql+asyncpg://用户:密码@主机:5432/库名
# SQLite(本地/试用): sqlite+aiosqlite:///./axon.db
# MySQL(需自行加驱动 aiomysql): mysql+aiomysql://用户:密码@主机:3306/库名
YIMAI_DATABASE_URL=postgresql+asyncpg://yimai:yimai@localhost:5432/yimai
YIMAI_DB_ECHO=false
# --- 认证(JWT)---
# 生产务必换成 32 字节以上随机串(如 openssl rand -hex 32),勿用默认值。
YIMAI_JWT_SECRET=CHANGE-ME-32-bytes-min-in-production
YIMAI_JWT_EXPIRES_MINUTES=480
# --- 凭证保险箱(§13):local(Fernet)| vault ---
YIMAI_SECRET_BACKEND=local
# local 后端主密钥:生产由 KMS 注入,勿写进文件。留空时启动会用临时密钥(重启即失效)。
YIMAI_SECRET_MASTER_KEY=
# vault 后端才需要:
# YIMAI_VAULT_ADDR=http://vault:8200
# YIMAI_VAULT_TOKEN=
# --- 任务队列(Celery + Redis)---
YIMAI_REDIS_URL=redis://localhost:6379/0
# --- Prometheus 查询代理(§15.4)---
YIMAI_PROMETHEUS_BASE_URL=http://localhost:9090
# --- 种子管理员(首次 seed 用,见部署文档)---
YIMAI_SEED_ADMIN_USER=admin
YIMAI_SEED_ADMIN_PASSWORD=admin
# --- 入向 webhook 每源 HMAC secret(§8.3)---
# JSON:键为 X-Webhook-Source 头值,值为该源 secret(轮转期可逗号分隔双 secret)。
# 缺省为空 = 拒绝所有 webhook。示例:
# YIMAI_WEBHOOK_SECRETS={"gitlab-prod":"secret1","sonarqube":"secret2"}
# --- 部署门禁与自动回滚(默认安全:拦 critical、不自动回滚)---
YIMAI_DEPLOY_BLOCK_ON_CRITICAL=true
YIMAI_AUTO_ROLLBACK_ON_ALERT=false