必要環境
手元の SSH 設定をそのまま使います。
ssh(OpenSSH)rsync- 既存の
~/.ssh/config(例:Host myhost)
インストール
ソースから入れる場合:
cargo install --path .
# → ~/.cargo/bin/ninigi
または make install。
トンネル
ssh -N -L をホストとポート指定だけで立ち上げます。
# いままで: ssh -N -L 5173:127.0.0.1:5173 myhost
ninigi up myhost 5173
ninigi up myhost 5173 3000:8080
ninigi up grafana # ssh config の LocalForward を利用
ninigi ls
ninigi down myhost
ninigi down # 全部止める
ファイル転送
デフォルトの宛先は /tmp です。
# remote 省略 → /tmp/<basename>
ninigi push myhost ./app
# → myhost:/tmp/app
ninigi pull myhost /tmp/app
# → ローカル /tmp/app
ninigi push myhost ./app ~/work/app
ninigi pull --dry-run myhost ~/work/app ./
SSH・ホスト・設定
接続と設定の初期化:
ninigi ssh myhost
ninigi hosts
ninigi init # ~/.config/ninigi/config.toml
[defaults]
remote_dir = "/tmp"
local_dir = "/tmp"
[presets.vite]
host = "myhost"
ports = ["5173"]
[hosts.myhost]
remote_dir = "/tmp"
ポート記法
短い指定から待ち受け IF まで。
| 指定 | 意味 |
|---|---|
5173 |
ローカル 5173 → リモート 5173 |
5173:3000 |
ローカル 5173 → リモート 3000 |
0.0.0.0:5173 |
全 IF 待ち受け |
状態ファイル
- 設定:
~/.config/ninigi/config.toml -
トンネル PID:
~/.local/state/ninigi/tunnels.json(macOS では~/Library/Application Support/ninigi/等)