CLIリファレンス
roji
リバースプロキシサーバーを起動。
sudo roji # フォアグラウンドで起動
sudo roji --network web,api # 複数ネットワークを監視
sudo roji --domain test.localhost # カスタムドメイン
sudo roji --http-port 8080 --https-port 8443 # カスタムポート
sudo roji --log-level debug # 詳細ログフラグ:
| フラグ | 説明 | デフォルト |
|---|---|---|
--network | 監視するDockerネットワーク | roji |
--domain | ベースドメイン | dev.localhost |
--http-port | HTTPポート | 80 |
--https-port | HTTPSポート | 443 |
--certs-dir | 証明書ディレクトリ | ~/.local/share/roji/certs |
--data-dir | データディレクトリ | ~/.local/share/roji |
--dashboard | ダッシュボードホスト名 | roji.{domain} |
--log-level | ログレベル(debug, info, warn, error) | info |
--auto-cert | 証明書の自動生成 | true |
--config | 設定ファイルパス | ~/.config/roji/config.yaml |
roji doctor
環境チェックと問題の自動修復。
roji doctor # 全チェック実行
roji doctor --fix # 修復可能な問題を自動修復
roji doctor --json # JSON形式で出力チェック項目:
- Dockerデーモンの稼働
- Dockerソケットのアクセス権
- Dockerネットワークの存在
- ポート80/443の利用可能性
- CA証明書の存在と有効性
- CA証明書のシステムインストール状態
- サーバー証明書の有効期限
- DNS解決(*.localhost)
- 設定ファイルのバリデーション
- トンネル(設定時のみ: cloudflared の導入、ログイン、named tunnel の存在)
roji config
設定の管理。
roji config show # 現在の設定を表示
roji config path # 設定ファイルのパスを表示
roji config init # デフォルト設定ファイルを作成
roji config edit # $EDITORで開く
roji config reload # static_sites / proxy_sites の変更を稼働中の roji に反映roji config reload は、稼働中の roji に設定ファイルを読み直させる。宣言した
サイトをすべて一覧し、登録されなかったものには理由を付けて表示する。この方法で
反映されるのは static_sites と proxy_sites だけで、それ以外の変更は roji の
再起動が要る。roji が動いていない場合と、roji が設定ファイルを読めなかった場合は
失敗する。一部のサイトがスキップされただけなら成功として終了する。
roji ca
CA証明書の管理。
roji ca status # インストール状態を確認
roji ca install # システム信頼ストアにインストール
roji ca install --user # ユーザーストアにインストール(sudo不要)
roji ca install --windows # Windows(WSLから)にインストール
roji ca install --firefox # Firefoxにもインストール(Linux)
roji ca install --force # 強制再インストール
roji ca uninstall # 信頼ストアから削除
roji ca export [path] # CA証明書をエクスポート(.pemまたは.crt)プラットフォーム対応:
| プラットフォーム | 方法 |
|---|---|
| macOS | Keychain (security add-trusted-cert) |
| Linux (Debian/Ubuntu) | update-ca-certificates |
| Linux (RHEL/Fedora) | update-ca-trust |
| Windows | certutil -addstore |
| WSL → Windows | certutil.exe(ユーザーストア) |
roji service
システムサービスとしてrojiを管理。
roji service install # サービスとして登録
roji service uninstall # サービス登録を削除
roji service start # サービスを起動
roji service stop # サービスを停止
roji service restart # サービスを再起動
roji service status # 状態を確認プラットフォーム対応:
| プラットフォーム | サービス管理 | 設定場所 |
|---|---|---|
| Linux | systemd | /etc/systemd/system/roji.service |
| macOS | launchd | ~/Library/LaunchAgents/com.roji.agent.plist |
| Windows | NSSM | Windows Service |
roji log
サーバーログを表示。
roji log # リアルタイムでログを追跡(tail -f相当)
roji log -n 100 # 最新100行を表示後、追跡
roji log --no-follow # 現在のログを表示して終了ログファイルの場所:
- Linux/WSL:
~/.local/share/roji/roji.log - macOS:
~/Library/Logs/roji.log
ログは10MBを超えると自動ローテートされます。
roji routes
起動中のサーバーから全登録ルートを一覧表示。
roji run
空きポートで開発サーバーを起動し、ホスト名を付ける。
roji run <name> -- <command> [args...]
roji run app -- npx vite --port {port}
roji run api -- npx wrangler dev --port {port}
roji run web -- npm run dev空きポートを選び、稼働中の roji で https://<name>.<domain> をそこへ向けてから、
コマンドを実行する。ポートは引数の中の {port} をすべて置き換え、環境変数
PORT にも入る。ホスト名と URL も同じ 2 つの方法で渡る({host} と ROJI_HOST、
{url} と ROJI_URL)。コマンドが終了するとルートは取り消され、コマンドの終了コードが
そのまま返る。
roji が動いている必要がある。詳細は ホスト上の開発サーバーを参照。
roji version
バージョン、コミットハッシュ、ビルド日、Goバージョンを表示。
roji credits
roji のライセンスに続けて、バイナリにリンクされた Go モジュールのライセンス
(CREDITS)と、Petite Vue など同梱しているその他のソフトウェアの表示
(THIRD_PARTY_NOTICES)を出力する。同じファイルはリリースのアーカイブにも
入っているが、ワンライナーのインストーラーはバイナリだけを残すので、その場合は
このコマンドで確認する。
roji health
rojiサーバーが正常かチェック。正常なら終了コード0、異常なら1で終了。