文档/ 参考

环境变量

进程级配置,写在 .env 里,改完需要重启。这是一张查表用的页面,不用通读。

和运行时设置的区别§

GPT-Load 有两套配置,容易混淆:

类型改在哪生效方式
环境变量.env 文件需要重启。管进程本身:监听地址、数据库、密钥
运行时设置管理台即时生效。管调度行为:超时、重试、亲和

本页只讲前者。调度相关的参数见 运行时设置

进程与网络§

变量默认值说明
HOST127.0.0.1监听地址。改成 0.0.0.0 等于对外开放,务必先读安全页
PORT3001监听端口,必须在 1–65535 之间
READ_TIMEOUT60读取请求的超时,单位秒
IDLE_TIMEOUT120连接空闲超时,单位秒
GRACEFUL_SHUTDOWN_TIMEOUT10优雅关闭的等待时长,单位秒
所有超时项的单位都是秒

不是毫秒。这是最容易配错的一处—— 写成 60000 会得到一个 16 小时的超时。

数据与存储§

变量默认值说明
DATA_DIR./data数据目录,存数据库与两把密钥
DATABASE_DSN(空)留空用受管 SQLite;填入则连接外部数据库
DATABASE_MAX_OPEN_CONNECTIONS10数据库最大连接数。仅对 MySQL 与 PostgreSQL 生效,SQLite 始终单连接
DATABASE_MAX_IDLE_CONNECTIONS5最大空闲连接数,不得大于上一项。同样只对 MySQL 与 PostgreSQL 生效

DATABASE_DSN 的写法与三种驱动的取舍见 数据库与备份

密钥§

变量默认值说明
AUTH_KEY(自动生成)管理台登录密钥。留空则生成到 DATA_DIR/auth.key
ENCRYPTION_KEY(自动生成)加密渠道凭据。留空则生成到 DATA_DIR/encryption.key不支持轮换,必须与数据库一起备份

两把密钥的完整说明见 安全与上生产

出站代理§

变量默认值说明
HTTP_PROXY(空)HTTP 上游请求的环境代理
HTTPS_PROXY(空)HTTPS 上游请求的环境代理
NO_PROXY(空)逗号分隔的主机、域名或 IP,这些目标不走环境代理
它们是最后一层兜底

环境代理只在凭据、分组和全局设置都没有指定代理时才生效。 在管理台里配了代理之后,这几个变量就不再起作用。 完整的优先级链见 代理与请求头

日志§

变量默认值说明
LOG_LEVELinfo日志级别
LOG_FORMATtext只接受 textjson,接日志系统时用后者

这里说的是进程日志(程序运行状况), 不是请求日志。请求日志的留存天数在管理台配置。

模型价格同步§

变量默认值说明
MODELS_DEV_AUTO_SYNC_ENABLED(未设置)是否自动从 Models.dev 同步模型价格。 不设置时由管理台的持久化设置决定,初始为开启
设了它,管理台里的开关会变成只读

这个变量不设置时,开关由管理台掌握,随时可改。 一旦在 .env 里显式设成 truefalse, 它就成了强制值,管理台中的同名选项会变为只读。 如果你发现管理台里关不掉自动同步,先检查这个变量。 价格来源见 模型管理

容器里的覆写§

容器内这两项改了也没用

Compose 部署时,容器内的 HOST 被固定为 0.0.0.0DATA_DIR 被固定为 /app/data。 在 .env 里改这两个不会生效

真正决定外部能否访问的是端口发布配置—— 默认只发布到宿主机的 127.0.0.1

docker-compose.yml
ports:
  - "$${HOST:-127.0.0.1}:$${PORT:-3001}:$${PORT:-3001}"

也就是说:在容器部署里,HOST 控制的是发布到宿主机的哪个地址, 而不是容器内的监听地址。要对外提供服务, 正确做法是加反向代理,见 安全与上生产

还有三个变量只在 Compose 部署里有意义, 直接跑二进制时它们不起作用:

变量默认值说明
BIND_ADDRESS继承 HOST只影响 Compose:单独指定主服务端口发布到宿主机的哪个地址,不影响回调端口
OAUTH_CALLBACK_BIND_ADDRESS继承 HOST只影响 Compose:单独指定 1455、54545、51121 三个回调端口的发布地址
CONTAINER_STOP_GRACE_PERIOD15s只影响 Compose:强制停止容器前的等待时间,用 Docker 时长写法,应大于 GRACEFUL_SHUTDOWN_TIMEOUT

OAUTH_CALLBACK_BIND_ADDRESS 的使用场景见 订阅账号—— 简单说:不要为了完成授权把它改成 0.0.0.0

环境变量 - GPT-Load