Skip to content

运行时配置参考

运行时环境变量与配置项参考。

Updated View as Markdown

标识

本页汇总 Appaloft 运行时环境变量——即启动 CLI、Web 控制台或自托管服务时可以设置的变量。它和 appaloft.yml(应用部署配置文件,见配置文件参考)是两个不同的层次:appaloft.yml 描述”要部署什么、如何部署”,本页描述”Appaloft 自身如何运行”。

CLI 与认证

变量说明
APPALOFT_HOMECLI 本机 Profile、Context 和握手信息的存储目录,默认是用户本机 Appaloft home
APPALOFT_TOKEN非交互场景使用的作用域受限 Token,在凭据解析中优先于旧版 Cookie
APPALOFT_AUTH_COOKIE仅供本机受信任操作者的旧版/诊断兼容用途,不是 AI Agent 的推荐认证路径
APPALOFT_CONTROL_PLANE_MODE覆盖 CLI 的执行目标:none(本地)、cloudself-hosted
APPALOFT_CONTROL_PLANE_URL显式指定远程控制面地址

详见 CLI reference

文档开发与本地链接

变量说明
APPALOFT_DEV_DOCS_HOST本地开发时文档服务器绑定的主机名
APPALOFT_DEV_DOCS_PORT本地开发时文档服务器绑定的端口
APPALOFT_WEB_DEV_DOCS_TARGET覆盖 Web 开发服务器 /docs/* 重定向的完整目标地址
APPALOFT_DOCS_STATIC_DIR自托管部署中内嵌文档静态资源的目录

产品版本

变量说明
APPALOFT_APP_VERSION注入 Web 控制台显示的产品版本号;开发环境默认读取仓库根 package.json 的版本

自托管:Web 与认证

变量说明
APPALOFT_WEB_ORIGINWeb 控制台对外可访问的源地址
APPALOFT_BETTER_AUTH_URL认证服务的基础 URL
APPALOFT_BETTER_AUTH_COOKIE_DOMAIN认证 Cookie 的作用域名
APPALOFT_BETTER_AUTH_COOKIE_PREFIX认证 Cookie 的名称前缀
APPALOFT_BETTER_AUTH_TRUSTED_PROXY_HEADERS是否信任反向代理转发的认证相关请求头

自托管:登录方式(Provider)

Provider相关变量
GitHubAPPALOFT_GITHUB_CLIENT_IDAPPALOFT_GITHUB_CLIENT_SECRETAPPALOFT_GITHUB_REDIRECT_URI
GoogleAPPALOFT_GOOGLE_CLIENT_IDAPPALOFT_GOOGLE_CLIENT_SECRETAPPALOFT_GOOGLE_REDIRECT_URI
通用 OIDCAPPALOFT_OIDC_CLIENT_IDAPPALOFT_OIDC_CLIENT_SECRETAPPALOFT_OIDC_DISCOVERY_URLAPPALOFT_OIDC_REDIRECT_URI
GitHub 集成(非登录)APPALOFT_GITHUB_WEBHOOK_SECRETAPPALOFT_GITHUB_PREVIEW_FEEDBACK_TOKEN

自托管:首个管理员引导

变量说明
APPALOFT_FIRST_ADMIN_EMAIL首个管理员账号邮箱
APPALOFT_FIRST_ADMIN_PASSWORD / APPALOFT_INITIAL_ADMIN_PASSWORD首个管理员账号密码
APPALOFT_FIRST_ADMIN_DISPLAY_NAME首个管理员显示名称
APPALOFT_FIRST_ADMIN_ORGANIZATION_NAME / APPALOFT_FIRST_ADMIN_ORGANIZATION_SLUG首个组织的名称与 slug
APPALOFT_BOOTSTRAP_FIRST_ADMIN_OUTPUT_FILE引导结果(不含明文密码)写入的文件路径

详见创建首个管理员账号

自托管:数据库与升级

变量说明
APPALOFT_DATABASE_POOL_MAX数据库连接池上限
APPALOFT_INSTANCE_UPGRADE_APPLY_ENABLED是否允许实例自动应用升级
APPALOFT_REMOTE_PGLITE_SYNC_BACKUP_MAX_COUNT / APPALOFT_REMOTE_PGLITE_SYNC_BACKUP_RETENTION_DAYS远端状态同步备份的数量与保留天数上限

详见数据库维护

自托管:控制面加密与追踪

变量说明
APPALOFT_CONTROL_PLANE_SECRET_KEYS控制面用于加解密的密钥集合
APPALOFT_CONTROL_PLANE_ACTIVE_SECRET_KEY_ID当前生效的密钥 id
APPALOFT_EXPORT_PASSPHRASE数据导出加密口令
APPALOFT_TRACE_LINK_BASE_URL结构化错误中关联的追踪系统基础地址

自托管:Worker 与队列

Durable worker runtime 配置控制已经 accepted 的长耗时工作在请求返回 id 之后如何被 claim、执行和监控。operator 也可以运行 appaloft worker 启动专用 worker 进程。

变量说明
APPALOFT_WORKER_COUNT单进程内启动的 Worker 数量
APPALOFT_WORKER_GROUP / APPALOFT_WORKER_OBSERVED_GROUPSWorker 所属分组与观测分组
APPALOFT_WORKER_RUNTIME_MODEWorker 运行时模式
APPALOFT_WORKER_QUEUE_BACKEND / APPALOFT_WORKER_EXTERNAL_BACKEND_KIND队列后端类型
APPALOFT_WORKER_SLOTWorker 槽位标识

自托管:后台调度器

appaloft doctorGET /api/system/doctor 与 Web Instance 页只展示已配置的 worker 状态;they do not start workers, tick schedulers, or run maintenance work。配置库层面默认下,certificate retry scheduler starts with the backend service,以便已接受的证书工作可以重试。其他 scheduled worker 默认关闭。

除非另有说明,scheduled worker 默认关闭。certificate retry scheduler 是默认开启的例外,因为它只处理已经 accepted、随后进入 retry-scheduled 状态的 managed certificate work。Runtime execution、runtime prune、history retention、monitoring collection 和 preview cleanup worker 都保持默认关闭,直到 operator 显式启用对应的 APPALOFT_*_ENABLED 设置。

变量默认值
APPALOFT_CERTIFICATE_RETRY_SCHEDULER_ENABLEDtrue
APPALOFT_CERTIFICATE_RETRY_SCHEDULER_INTERVAL_SECONDS30
APPALOFT_CERTIFICATE_RETRY_DEFAULT_DELAY_SECONDS60
APPALOFT_CERTIFICATE_RETRY_SCHEDULER_BATCH_SIZE50
APPALOFT_SCHEDULED_TASK_RUNNER_ENABLEDfalse
APPALOFT_SCHEDULED_TASK_RUNNER_INTERVAL_SECONDS30
APPALOFT_SCHEDULED_TASK_RUNNER_BATCH_SIZE20
APPALOFT_SCHEDULED_RUNTIME_PRUNE_RUNNER_ENABLEDfalse
APPALOFT_SCHEDULED_RUNTIME_PRUNE_RUNNER_INTERVAL_SECONDS300
APPALOFT_SCHEDULED_RUNTIME_PRUNE_RUNNER_BATCH_SIZE20
APPALOFT_SCHEDULED_HISTORY_RETENTION_RUNNER_ENABLEDfalse
APPALOFT_SCHEDULED_HISTORY_RETENTION_RUNNER_INTERVAL_SECONDS3600
APPALOFT_SCHEDULED_HISTORY_RETENTION_RUNNER_BATCH_SIZE100
APPALOFT_RUNTIME_MONITORING_COLLECTOR_RUNNER_ENABLEDfalse
APPALOFT_RUNTIME_MONITORING_COLLECTOR_RUNNER_INTERVAL_SECONDS60
APPALOFT_RUNTIME_MONITORING_COLLECTOR_RUNNER_BATCH_SIZE50
APPALOFT_RUNTIME_MONITORING_RAW_RETENTION_HOURS24
APPALOFT_PREVIEW_EXPIRY_CLEANUP_SCHEDULER_ENABLEDfalse
APPALOFT_PREVIEW_EXPIRY_CLEANUP_SCHEDULER_INTERVAL_SECONDS300
APPALOFT_PREVIEW_EXPIRY_CLEANUP_SCHEDULER_BATCH_SIZE20
APPALOFT_PREVIEW_CLEANUP_RETRY_SCHEDULER_ENABLEDfalse
APPALOFT_PREVIEW_CLEANUP_RETRY_SCHEDULER_INTERVAL_SECONDS300
APPALOFT_PREVIEW_CLEANUP_RETRY_SCHEDULER_BATCH_SIZE20

这些调度器默认禁用或需要显式启用;设置错误时不会启动对应 worker slice(without starting)。certificate retry scheduler、preview cleanup、preview expiry cleanup、scheduled task runner、scheduled runtime prune、scheduled history retention、runtime monitoring collector 都属于这一组,且多数默认禁用(disabled by default)。

多个后台调度器共享同一组变量命名模式:APPALOFT_<SCHEDULER>_ENABLED(是否启用)、APPALOFT_<SCHEDULER>_BATCH_SIZE(单次处理批量大小)、APPALOFT_<SCHEDULER>_INTERVAL_SECONDS(轮询间隔秒数)。例如证书重试调度器:

APPALOFT_CERTIFICATE_RETRY_SCHEDULER_ENABLED=true
APPALOFT_CERTIFICATE_RETRY_SCHEDULER_BATCH_SIZE=50
APPALOFT_CERTIFICATE_RETRY_SCHEDULER_INTERVAL_SECONDS=30

遵循同样模式的调度器还包括:

  • APPALOFT_PREVIEW_CLEANUP_RETRY_SCHEDULER_*(预览清理重试)
  • APPALOFT_PREVIEW_EXPIRY_CLEANUP_SCHEDULER_*(预览到期清理)
  • APPALOFT_RUNTIME_MONITORING_COLLECTOR_RUNNER_*(运行时监控采集)
  • APPALOFT_SCHEDULED_DEPENDENCY_BACKUP_RUNNER_*(依赖资源定时备份)
  • APPALOFT_SCHEDULED_STORAGE_VOLUME_BACKUP_RUNNER_*(存储卷定时备份)
  • APPALOFT_SCHEDULED_TASK_RUNNER_*(定时任务)
  • APPALOFT_SCHEDULED_HISTORY_RETENTION_RUNNER_*(历史保留清理)
  • APPALOFT_SCHEDULED_RUNTIME_PRUNE_RUNNER_*(运行时清理)
  • APPALOFT_TUNNEL_RECONCILER_ENABLED / APPALOFT_TUNNEL_RECONCILE_BATCH_SIZE / APPALOFT_TUNNEL_RECONCILE_INTERVAL_SECONDS(隧道调谐)

自托管:保留窗口与代理

变量说明
APPALOFT_RUNTIME_MONITORING_RAW_RETENTION_HOURS原始运行时监控样本的保留小时数
APPALOFT_TERMINAL_SESSION_ACTIVE_TTL_SECONDS活跃终端会话的存活时间
APPALOFT_TERMINAL_SESSION_OUTPUT_RETENTION_BYTES终端会话输出的保留字节上限
APPALOFT_TRAEFIK_IMAGE自托管代理使用的 Traefik 镜像引用
APPALOFT_DOCKER_SWARM_EXECUTION_ENABLED / APPALOFT_DOCKER_SWARM_EDGE_NETWORKDocker Swarm 执行模式与边缘网络

错误码与恢复提示

如果某个环境变量配置错误导致服务无法启动或某项功能不可用,运行:

appaloft doctor

它会检查当前实例的系统能力和已知配置问题,并给出可执行的下一步建议。

相关任务

Navigation

Type to search…

↑↓ navigate↵ selectEsc close