配置与运行参数
命令行参数
| 参数 | 说明 |
|---|---|
-c | 配置目录,也可以用环境变量 GATELY_CONFIG_DIR 指定 |
-listen | 覆盖管理界面监听地址,例如 :16680 |
-apply | 声明式配置目录,也可以用环境变量 GATELY_APPLY_DIR 指定,见下文 |
-version | 输出版本信息 |
| 环境变量 | 说明 |
|---|---|
GATELY_INITIAL_PASSWORD | 首次启动时的管理员初始密码(至少 8 位),不设置时为默认密码 gately.cn;账号已存在时不起作用 |
配置目录
所有配置保存在配置目录中,每个模块一个 <name>.json 明文文件,原子写入,文件权限 0600。因此:
- 可以直接用文本编辑器查看;
- 可以把目录纳入 git,用 diff 审计每次变更并随时回滚;
- 备份只需复制目录。
注意
ssl.json 中含有证书私钥,纳入版本库前请确认仓库为私有,或把该文件加入忽略列表。
声明式配置
指定 -apply <目录> 后,每次启动会把该目录下的 <名称>.json 覆盖到配置目录,内容相同的文件不会重写。适合把配置放在 git 仓库、Kubernetes ConfigMap 或部署脚本中统一下发。
- 写入前校验是合法 JSON,任一文件无效则拒绝启动;
account.json与tokens.json不允许覆盖,账号与令牌只能在管理界面管理;- 被覆盖的旧内容会保存在 配置历史 中,可随时回滚。
外部程序目录
Tailscale、frp、cloudflared 这三个模块托管官方的外部程序,按以下顺序查找可执行文件:
- 模块设置中填写的路径;
PATH;- 配置目录下的
bin/子目录。
Docker 部署时把二进制放进挂载的配置目录即可,例如 ./gately-data/bin/frpc。Tailscale 需要同时提供 tailscale 与 tailscaled。详见 Tailscale / frp / cloudflared。
运行日志
系统日志与各模块的运行日志默认写入配置目录下的 logs/,重启或升级后仍可在「系统日志」和各模块页面查看:
- 每个来源一个 JSON Lines 文件:
logs/<模块 ID>.log,系统日志为logs/gately.log;启动时按「日志保留条数」从文件恢复最近的日志; - 有新日志时最多延迟 1 秒批量写入;单个文件超过上限(默认 2 MB)后轮转为
.1,只保留这一份历史,每个来源最多占用两倍上限; - 「设置 → 网络与运行 → 运行参数」中可以关闭「日志落盘」或调整「日志文件上限」,立即生效;关闭后日志只保存在内存,重启后清空;
- 在页面上清空某个模块的日志会同时删除对应文件;
- 配置备份不包含
logs/与操作审计日志audit.log。
备份与恢复
「设置」中提供配置备份与恢复,并承担从 Lucky 导入配置的入口。