Skip to content
Эта страница переведена с помощью ИИ и может содержать неточности. Помогите улучшить перевод на GitHub.

Конфигурация и параметры запуска ​

Параметры командной строки ​

ПараметрОписание
-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 МБ), ротируется в .1, и хранится только этот предыдущий файл, так что каждый источник занимает не более двойного предела;
  • В разделе «Настройки → Сеть и работа → Параметры работы» можно отключить «Сохранять журналы на диск» или изменить «Предел файла журнала»; изменения применяются сразу. Если сохранение выключено, журналы хранятся только в памяти и очищаются при перезапуске;
  • Очистка журналов модуля в интерфейсе удаляет и его файлы;
  • Резервные копии конфигурации не включают logs/ и журнал аудита audit.log.

Резервное копирование и восстановление ​

В разделе «Настройки» доступны резервное копирование и восстановление конфигурации; там же находится вход для импорта конфигурации из Lucky.

Распространяется по лицензии Apache-2.0.