跳到主要内容

配置参考

这一页按区块汇总 VEF 在启动期间会读取的配置项。

最小起步配置:

[vef.app]
name = "my-app"
port = 8080

[vef.data_source]
type = "sqlite"

配置文件查找路径

内部配置模块会按以下顺序查找 application.toml

  • ./configs
  • $VEF_CONFIG_PATH
  • .
  • ../configs

常用环境变量

关键环境变量包括:

  • VEF_CONFIG_PATH
  • VEF_LOG_LEVEL
  • VEF_NODE_ID
  • VEF_I18N_LANGUAGE

vef.app

字段类型含义
namestring应用名称,会影响部分运行时行为,例如 JWT audience 默认值。
portuint16HTTP 服务端口。
body_limitstringFiber body limit,例如 10mib

vef.data_source

字段类型含义
typepostgres | mysql | sqlite当前运行时真实支持的数据库类型。
hoststring网络数据库主机。
portuint16网络数据库端口。
userstring数据库用户名。
passwordstring数据库密码。
databasestring数据库名。
schemastring支持 schema 的驱动下使用的 schema 名。
pathstringSQLite 文件路径。
enable_sql_guardbool是否启用 SQL guard。

说明:

  • 尽管 config.DBKind 中还定义了更宽的枚举值,但当前运行时实际注册的 provider 只有 postgresmysqlsqlite

vef.cors

字段类型含义
enabledbool是否启用 CORS middleware。
allow_origins[]string允许的来源列表。

vef.security

字段类型含义
token_expiresdurationaccess token 生命周期。
refresh_not_beforedurationrefresh token 最早可刷新时间。
login_rate_limitint登录接口限流。
refresh_rate_limitintrefresh 接口限流。

vef.redis

字段类型含义
hoststringRedis host。
portuint16Redis port。
userstringRedis 用户名。
passwordstringRedis 密码。
databaseuint8Redis database 编号。
networkstringtcpunix

说明:

  • 默认 vef.Run(...) 启动图包含 Redis 模块
  • 只有当依赖图里真的有组件使用 *redis.Client 或其他 Redis 相关能力时,Redis 才会成为实际前提
  • 如果这些字段都不写,客户端仍然会回退到 127.0.0.1:6379tcp

vef.storage

字段类型含义
providermemory | minio | filesystem存储 provider 选择。
minio.endpointstringMinIO endpoint。
minio.access_keystringMinIO access key。
minio.secret_keystringMinIO secret key。
minio.bucketstringbucket 名。
minio.regionstringregion。
minio.use_sslbool是否使用 HTTPS。
filesystem.rootstringfilesystem provider 根目录。

vef.monitor

字段类型含义
sample_intervalduration采样间隔。
sample_durationduration采样窗口时长。

vef.mcp

字段类型含义
enabledbool是否启用 MCP server。
require_authbool/mcp 是否要求 Bearer token。

vef.approval

字段类型含义
auto_migrateboolapproval 模块是否自动迁移。
outbox_relay_intervalintoutbox relay 轮询间隔,单位秒。
outbox_max_retriesintoutbox 最大重试次数。
outbox_batch_sizeintoutbox 单批次最大数量。

延伸阅读

  • 配置:配置项的解释与实际示例
  • 内置资源:这些配置会影响哪些默认模块