Skip to content

配置与运行参数 ​

命令行参数 ​

参数说明
-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 这三个模块托管官方的外部程序,按以下顺序查找可执行文件:

  1. 模块设置中填写的路径;
  2. PATH;
  3. 配置目录下的 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 导入配置的入口。

以 Apache-2.0 许可证开源发布。