設定と起動オプション
コマンドラインオプション
| オプション | 説明 |
|---|---|
-c | 設定ディレクトリ。環境変数 GATELY_CONFIG_DIR でも指定できます |
-listen | 管理画面の待ち受けアドレスを上書きします。例::16680 |
-apply | 宣言的設定のディレクトリ。環境変数 GATELY_APPLY_DIR でも指定できます。後述 |
-version | バージョン情報を出力します |
| 環境変数 | 説明 |
|---|---|
GATELY_INITIAL_PASSWORD | 初回起動時の管理者の初期パスワード(8 文字以上)。未設定の場合はデフォルトのパスワード gately.cn になります。アカウントが既に存在する場合は効果がありません |
設定ディレクトリ
すべての設定は設定ディレクトリに保存されます。モジュールごとに 1 つの <name>.json 平文ファイルで、アトミックに書き込まれ、ファイルのパーミッションは 0600 です。そのため次のことができます。
- テキストエディターでそのまま内容を確認できます
- ディレクトリを git に入れ、diff で変更を監査し、いつでもロールバックできます
- バックアップはディレクトリをコピーするだけで完了します
注意
ssl.json には証明書の秘密鍵が含まれています。バージョン管理に入れる前に、リポジトリがプライベートであることを確認するか、このファイルを除外リストに追加してください。
宣言的設定
-apply <ディレクトリ> を指定すると、起動するたびにそのディレクトリ内の <名前>.json を設定ディレクトリへ上書きします。内容が同じファイルは書き直しません。設定を git リポジトリ、Kubernetes の ConfigMap、デプロイスクリプトでまとめて配布する用途に向いています。
- 書き込む前に正しい JSON かを検証し、無効なファイルが 1 つでもあれば起動を拒否します
account.jsonとtokens.jsonは上書きできません。アカウントとトークンは管理画面でのみ管理できます- 上書きされた古い内容は 設定履歴 に保存され、いつでもロールバックできます
外部プログラムのディレクトリ
Tailscale、frp、cloudflared の 3 つのモジュールは公式の外部プログラムを管理し、次の順序で実行ファイルを探します。
- モジュール設定に入力したパス
PATH- 設定ディレクトリ配下の
bin/サブディレクトリ
Docker でデプロイする場合は、マウントした設定ディレクトリにバイナリを置くだけで使えます(例:./gately-data/bin/frpc)。Tailscale には tailscale と tailscaled の両方が必要です。詳しくは Tailscale / frp / cloudflared を参照してください。
実行ログ
システムと各モジュールの実行ログは、既定で設定ディレクトリの logs/ に書き込まれます。再起動やアップグレードの後も「システムログ」と各モジュールのページで確認できます。
- 出力元ごとに 1 つの JSON Lines ファイル:
logs/<モジュール ID>.log、システムログはlogs/gately.log。起動時に「ログの保持行数」の分だけ最新のログをファイルから復元します - 新しいログは最大 1 秒遅れてまとめて書き込まれます。ファイルが上限(既定 2 MB)を超えると
.1にローテーションし、その 1 世代だけを残すため、出力元ごとの使用量は最大で上限の 2 倍です - 「設定 → ネットワークと実行 → 実行パラメーター」で「ログを永続化」をオフにしたり「ログファイル上限」を変更したりでき、すぐに反映されます。オフにするとログはメモリ上にのみ保持され、再起動で消去されます
- 画面でモジュールのログを消去すると、対応するファイルも削除されます
- 設定のバックアップには
logs/と操作監査ログaudit.logは含まれません
バックアップと復元
「設定」には設定のバックアップと復元があり、Lucky の設定をインポートする入口でもあります。