Worker 配置

源码运行时,Worker 从根目录 .env 读取这些变量;Docker Compose 也只读取这一份 .env,并按消费者白名单向 Worker 注入公共值和 Worker 专属值。API 首次管理员、CORS、指标监听和 AI Client 等 API 专属配置不会进入 Worker。Worker 只在启动时读取并校验配置;修改后需要重启,显式配置的 ENV_FILE 不存在或无法解析时会拒绝启动。

基础配置

配置项名称默认值说明
APP_ENVproduction选择 Worker 运行模式;可填 productiondevelopment
DATABASE_URL本地 PostgreSQL连接 PostgreSQL;填写 PostgreSQL 连接 URI。
REDIS_ADDRredis://localhost:6379/0连接 Redis 任务队列;填写 redis://rediss:// URI。
SECRET_ENCRYPTION_KEY1解密平台保存的凭据;填写与 API 相同的稳定密钥。
PUBLIC_BASE_URL生产环境必填设置任务通知中链接的平台根地址;生产环境填写用户实际访问的绝对 HTTPS URL,仅本机 localhost 或回环地址允许 HTTP。
LOG_FORMATauto选择终端日志渲染;可填 autoconsolejson,生产容器应使用 json
LOG_COLORauto控制 console 日志颜色;可填 autoalwaysneverNO_COLOR 会强制关闭。
LOG_LEVELinfo设置日志级别;可填 debuginfowarnerror
OTEL_EXPORTER_OTLP_ENDPOINT设置遥测数据接收端;填写 Collector 的 OTLP/HTTP URL。
BUILD_EXECUTOR_IMAGEmoby/buildkit:v0.24.0-rootless选择构建 Job 使用的 BuildKit;填写 OCI 镜像引用。
BUILD_EGRESS_MODE2restricted设置构建网络出口策略;可填 restrictedpermissive
BUILD_PRIVATE_EGRESS_CIDRS放行构建访问的私网目标;填写逗号分隔的 CIDR。
DEPLOY_ROLLOUT_TIMEOUT_SECONDS600设置部署等待超时;填写正整数秒数。
CERT_MANAGER_CLUSTER_ISSUERletsencrypt-http01选择证书签发器;填写 Kubernetes ClusterIssuer 名称。
  1. 说明:API 与 Worker 必须使用同一个 SECRET_ENCRYPTION_KEY
  2. 说明:restricted 默认阻止元数据地址和未放行的私网目标。

高级配置

运行与数据库

配置项名称默认值说明
ENV_FILE.env指定 Worker 读取的环境文件;填写有效文件路径,显式指定后文件缺失或格式错误会导致启动失败。
WORKER_DB_MAX_OPEN_CONNS20限制每个 Worker 副本的数据库最大打开连接数;填写正整数。
WORKER_DB_MAX_IDLE_CONNS5限制每个 Worker 副本的数据库最大空闲连接数;填写非负整数。
WORKER_DB_CONN_MAX_LIFETIME30m限制 Worker 数据库连接总寿命;填写 Go duration,如 30m
WORKER_DB_CONN_MAX_IDLE_TIME5m限制 Worker 数据库连接空闲时间;填写 Go duration,如 5m

可观测

配置项名称默认值说明
OTEL_RESOURCE_ATTRIBUTES设置 OpenTelemetry 资源属性;填写逗号分隔的 key=value
OTEL_EXPORTER_OTLP_HEADERS鉴权 Collector 请求;填写逗号分隔的 key=value Header。

构建

配置项名称默认值说明
BUILD_JOB_TIMEOUT_SECONDS1800设置构建 Job 的执行超时;填写正整数秒数。
BUILD_JOB_TTL_SECONDS3600设置完成后保留构建 Job 的时间;填写非负整数秒数。
BUILD_CACHE_ENABLEDfalse控制是否读写 BuildKit Registry 缓存;可填 truefalse
BUILD_CACHE_TAGbuildcache设置 Registry 缓存使用的标签;填写合法 OCI 镜像标签。
BUILD_PRIVATE_EGRESS_PORTS443限制构建访问私网目标的端口;填写逗号分隔的 165535 端口。
BUILD_BLOCKED_EGRESS_CIDRS追加构建禁止访问的网段;填写逗号分隔的 CIDR。

数据卷导入与导出

配置项名称默认值说明
VOLUME_TRANSFER_MAX_BYTES100Gi限制单次数据卷导入或导出大小;填写 1Gi5Ti 容量值。
VOLUME_TRANSFER_JOB_IMAGE选择数据卷传输 Pod 使用的程序版本;填写与 Worker 同版本的 OCI 镜像引用。

Helm 默认复用当前 Worker 版本的镜像。最小 Docker Compose、源码或二进制部署默认不启用导入导出;需要时只在根 .env 填写一次 VOLUME_TRANSFER_JOB_IMAGE,Compose 会将同一值传给 API 和 Worker。数据流不经过对象存储。

Docker Compose

配置项名称默认值说明
DEVOPS_IMAGE_TAGnightly选择 Docker Compose 使用的 Worker 镜像版本;填写镜像标签。