Rediacc CLIリファレンス
概要
**Rediacc CLI**(`rdc`)は、セルフホスト型インフラストラクチャ — マシン、リポジトリ、ストレージ、バックアップなど — を管理するためのコマンドラインインターフェースです。
インストール
[Rediaccリリースページ](https://www.rediacc.com)からプラットフォーム用の最新バイナリをダウンロードするか、パッケージマネージャーでインストールしてください:
# macOS / Linux
curl -fsSL https://www.rediacc.com | sh
# Or use the packaged binary directly
./rdc --help
グローバルオプション
すべてのコマンドはこれらのグローバルフラグをサポートしています:
| フラグ | 説明 |
|---|---|
--output | 出力形式 (table|json|yaml|csv)。REDIACC_DEFAULT_OUTPUT でデフォルトを上書きします。 |
--config | このコマンドに特定の設定を使用する |
--lang | 言語オーバーライド ({{languages}}) |
--force | 確認プロンプトをスキップする |
1. 設定管理
設定ファイルを管理する: 作成、切り替え、編集、状態の reconcile、横断的機能(フィールド、監査、SSH キー、リモート同期)
設定ファイルには接続の詳細(API URL、認証情報、デフォルトのチーム/リージョン/ブリッジ)が保存されており、環境間を素早く切り替えることができます。
1.1 prune
~/.config/rediacc/<config>.json にあるローカル設定ファイルから不要な要素を削除します。3つのバケットがクリーンアップされ、すべて純粋にローカルです(SSH/renet 呼び出しなし):(1) アンカー GUID/repo/machine がアクティブな設定にない ACME 証明書キャッシュエントリ;(2) 猶予期間が経過したアーカイブ済みリポジトリ(デフォルト 7 日、defaults.pruneGraceDays 参照);(3) ぶら下がりクロスリファレンス(machine→strategy、strategy→repo)。使用中のリソース、認証情報、ストレージトークン、known-hosts は触れません。デフォルトでは変更が適用されます;--dry-run でプレビューのみ。
rdc config prune [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--dry-run | 設定ファイルを変更せずに削除される内容をプレビューします。他の prune コマンドのデフォルトオフセマンティクスを反映します。 | いいえ | - |
--certs-only | ACME 証明書キャッシュバケットに制限します。アーカイブのパージとクロスリファレンスのクリーンアップをスキップします。--archives-only および --refs-only と相互排他的。 | いいえ | - |
--archives-only | 期限切れアーカイブのパージに制限します。証明書キャッシュとクロスリファレンスのクリーンアップをスキップします。--certs-only および --refs-only と排他的。 | いいえ | - |
--refs-only | ぶら下がりクロスリファレンス(machine→strategy、strategy→repo excludes/includes)に制限します。証明書キャッシュとアーカイブをスキップします。--certs-only および --archives-only と排他的。 | いいえ | - |
--purge-archived | 猶予期間を過ぎたものだけでなく、経過期間に関係なくアーカイブ済みリポジトリをすべて削除する。すべてのアーカイブ済みリポジトリに対して 'rdc repo admin archive purge' を実行するのと同等。復元用に保存された認証情報が一切不要だと確信できる場合のみ使用すること | いいえ | - |
--orphan-repos | どのマシンにも配置されていないリポジトリエントリを削除します。各エントリにはそのリポジトリの認証情報と SSH キーが保持されているため、この操作は復元できません。先に 'rdc config reconcile' を実行し、配置情報をマシンの状態に反映させてください。 | いいえ | - |
--grace-days <days> | この呼び出しのアーカイブ猶予期間(日数)を上書きします。設定の defaults.pruneGraceDays にフォールバックし、どちらも設定されていない場合は 7 にフォールバックします。 | いいえ | - |
1.2 init
新しい名前付き設定ファイルを作成する
ローカルモードでは、マシンを直接追加できます:
rdc config init [name] [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--ssh-key <path> | SSH 秘密鍵へのパス (例: ~/.ssh/id_rsa) | いいえ | - |
--renet-path <path> | renet バイナリへのパス (デフォルト: PATH の renet) | いいえ | - |
--master-password <password> | マスターパスワードでリソースを暗号化する | いいえ | - |
--server <url> | アカウントサーバーURL | いいえ | - |
1.3 list
すべての設定ファイルをリスト表示する
rdc config list
1.4 show
現在の設定の詳細を表示する
rdc config show [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--reveal | 機密値を平文で表示(対話モードのみ) | いいえ | - |
1.5 current
アクティブな設定を表示します: 名前、ファイル、解決されたサーバーとチャンネル、トークンの状態
rdc config current
1.6 delete
設定ファイルを削除する
rdc config delete <name>
1.7 set
デフォルト値を設定する (team、region、bridge)
rdc config set <key> <value>
1.8 clear
デフォルト値をクリアする(すべてまたは特定のキー)
rdc config clear [key]
1.9 recover
バックアップファイル (.bak) から設定を復元する
rdc config recover [name] [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
-y, --yes | 確認プロンプトをスキップする | いいえ | - |
1.10 ssh
SSH キーの設定を管理する
set
現在の設定に SSH キーを設定する
rdc config ssh set [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--key <path> | SSH 秘密キーファイルのパス | はい | - |
--embed | パスを保存する代わりにキーの内容を設定に埋め込む | いいえ | - |
show
現在の SSH キー設定を表示する
rdc config ssh show
remove
現在の設定から SSH キーを削除する
rdc config ssh remove
1.11 remote
リモート設定ストレージ接続を管理
enable
この設定をリモート暗号化ストレージにリンク
rdc config remote enable [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--headless | デバイスコードフローを使用(ヘッドレスサーバー用) | いいえ | - |
--password | 事前にプロビジョニングされたパスワードスロットでヘッドレス登録する(ブラウザ不要) | いいえ | - |
--api-url <url> | アカウントサーバーURL | いいえ | - |
--force | 確認なしでローカルの相違内容をサーバーのコピーで置き換える | いいえ | - |
disable
リモートストレージから切断し、設定をローカルに保存
rdc config remote disable
status
リモート接続状態を表示
rdc config remote status
refresh
リモートストレージから設定を強制再取得
rdc config remote refresh
1.12 field
ポインタ指定による設定フィールド操作(get/set/unset/rotate/list)。/credentials/cfDnsApiToken のような JSON Pointer(RFC 6901)を使用します。
get
JSON ポインタで単一の設定値を読み取ります。機密フィールドは --reveal を指定しない限り秘匿されます(人間のみ)。
rdc config field get [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--pointer <pointer> | フィールドへのJSONポインタ(例: /credentials/cfDnsApiToken) | はい | - |
--reveal | 機密値を平文で表示する(対話型 TTY のみ、監査ログに記録) | いいえ | - |
--digest | 値の代わりに SHA-256 ダイジェストを出力(エージェントに共有しても安全) | いいえ | - |
set
JSON ポインタ位置に設定値を書き込みます。機密パスには --current(知識ゲート)が必要です。
rdc config field set [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--pointer <pointer> | フィールドへのJSONポインタ(例: /credentials/cfDnsApiToken) | はい | - |
--new <value> | 新しい値({, [, ", true/false/null, 数値で始まる場合は JSON として解釈) | はい | - |
--current <value> | 現在の平文値 — 機密パスの変更に必須(知識ゲート証明) | いいえ | - |
unset
JSON ポインタ位置の設定値を削除。機密パスには --current が必要です。
rdc config field unset [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--pointer <pointer> | フィールドへのJSONポインタ(例: /credentials/cfDnsApiToken) | はい | - |
--current <value> | 現在の平文値 — 機密パスの削除に必須 | いいえ | - |
rotate
--current なしで機密値をローテーションします。対話型 TTY のみ、詳細に監査されます。
rdc config field rotate [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--pointer <pointer> | 機密フィールドへのJSONポインタ(例: /credentials/cfDnsApiToken) | はい | - |
--new <value> | 新しい値 | はい | - |
list
登録済みのすべてのセンシティビティ・ポインタ・テンプレートと種類、commit/encrypt ポリシーを一覧表示。
rdc config field list [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--sensitive | 機密(非パブリック)テンプレートのみ表示 | いいえ | - |
1.13 edit
アクティブな設定を秘匿された JSONC プロジェクションとして $EDITOR で開きます。人間のみ、エージェントは拒否されます。
rdc config edit [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--reveal | 機密値を平文で表示する(対話型 TTY のみ、監査ログに記録) | いいえ | - |
--dump | エディタを開かず、現在の設定を JSONC として stdout に出力(読み取り専用。秘匿時はエージェントでも安全) | いいえ | - |
--apply <file> | 編集済み JSONC ファイルを適用($EDITOR 起動をスキップ) | いいえ | - |
--current-secrets <file> | ポインタ → 旧平文 のマップ JSON ファイル。--apply 時の知識ゲート用 | いいえ | - |
--editor <cmd> | エディタ コマンドの上書き(git と同じ優先順位: --editor > $GIT_EDITOR > git config core.editor > $VISUAL > $EDITOR) | いいえ | - |
1.14 audit
設定監査ログを確認(~/.config/rediacc/audit.log.jsonl のハッシュチェーン JSONL)
log
最近の監査エントリを JSON として出力
rdc config audit log [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--since <spec> | 指定より新しいエントリのみ表示(例: '24h', '7d', ISO タイムスタンプ) | いいえ | - |
--path <glob> | JSON Pointer グロブでフィルタ(例: /credentials/*) | いいえ | - |
--actor <kind> | アクターの種類でフィルタ(human|agent) | いいえ | - |
tail
新しいエントリを書き込まれた順にストリーム(Ctrl+C で停止)
rdc config audit tail
verify
すべての監査エントリにおける SHA-256 ハッシュチェーンの整合性を検証
rdc config audit verify
1.15 reconcile
マシン側の実態からランタイム状態を再構築する。古くなったアタッチ情報やルーティング情報を修正する
rdc config reconcile [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--machine <m...> | 対象マシンを指定して reconcile を限定する | いいえ | - |
--dry-run | 変更を加えずに実行内容を表示する | いいえ | - |
--accept-observed | 宣言された配置を、イメージが実際にある場所に一致するよう書き換える。ただしそれが一意である場合のみ(正確に 1 台のマシンで観測された場合)。重複は競合のままとなる。 | いいえ | - |
1.16 rotate-cek
組織の設定暗号化キーをローテーションする
rdc config rotate-cek [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--api-url <url> | アカウントサーバーURL | いいえ | - |
2. データストア管理
リポジトリを保持する名前付きストレージプール。データストアは可搬(マシンにアタッチし、別のマシンへ移動できる)かつシングルマウンター(常にちょうど1台のマシンだけが保持する)である。各マシンの暗黙のデフォルトデータストアはここでは管理しない
2.1 resize
データストアを拡張または縮小する。これはオフライン操作であり、内部のリポジトリは停止しておく必要がある
rdc datastore resize <datastore> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--size <size> | 新しいサイズ(例: 200G) | はい | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
2.2 fork
データストアを copy-on-write でフォークする。フォークは即時に完了し、コストはプールのサイズに比例しない。rbd バックエンドが必要: local データストアにはブロックレベルのクローンがないため、内部のリポジトリは代わりに reflink で1つずつフォークする(rdc repo fork)
rdc datastore fork <datastore> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--tag <tag> | フォークのタグ(結果は name:tag になる) | はい | - |
--attach-to <machine> | フォーク作成後すぐにこのマシンへアタッチする(--writes が必要) | いいえ | - |
--writes <disposition> | フォークの書き込み先: local(即時・一時的)または ceph(永続クローン) | いいえ | - |
--cow-size <size> | --writes local 用のオーバーレイサイズ | いいえ | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
2.3 status
1つのデータストアを表示する: バックエンド、アタッチ状態、使用量、リポジトリ、スナップショット。デタッチされたデータストアでもレコードは表示される
rdc datastore status <datastore> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
2.4 create
マシン上に追加の名前付きデータストアを作成する。local バックエンドはそのマシン上のファイルベースのプールで、そこに固定される。rbd バックエンドは Ceph 上に存在するため、同じクラスターに到達できる任意のマシンへ移動できる。Kubernetes 用データストアにするには --cluster を渡す。この参照は作成時に固定される
rdc datastore create <datastore> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
-m, --machine <name> | データストアを作成するマシン | はい | - |
--size <size> | データストアサイズ(例: 100G) | はい | - |
--backend <type> | ストレージバックエンド: local(ファイルベース、このマシンに固定)または rbd(Ceph、移動可能) | いいえ | local |
--pool <name> | rbd バックエンド用の Ceph プール(デフォルト: rbd) | いいえ | - |
--image <name> | rbd バックエンド用の RBD イメージ名(デフォルト: データストア名) | いいえ | - |
--cluster <name> | このデータストアが属する Kubernetes クラスター。指定すれば Kubernetes リポジトリ専用、未指定なら Docker リポジトリ専用となる。作成時に固定される | いいえ | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
2.5 list
名前付きデータストアの一覧、アタッチ先、保持しているリポジトリを表示する
rdc datastore list [place]
2.6 attach
データストアをマシンにアタッチする。常にちょうど1台のマシンだけがデータストアを保持するため、別のマシンへアタッチすると実質的に移動になる: 元の保持者が先に手放し、引き渡しに失敗した場合は元のアタッチがそのまま維持される。フォークは書き込み先(--writes)を指定する必要がある
rdc datastore attach <datastore> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--to <machine> | データストアのアタッチ先マシン | はい | - |
--writes <disposition> | フォークの書き込み先: local(即時・一時的、デタッチで消失)または ceph(プール内の永続クローン)。フォークの場合は必須 | いいえ | - |
--cow-size <size> | --writes local 用のオーバーレイサイズ | いいえ | - |
--no-auto | 起動時にこのデータストアを自動的に再アタッチしない | いいえ | - |
--force | データストアを正常に手放さなかった古い保持者をフェンシングする | いいえ | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
2.7 detach
データストアをマシンからデタッチする。内部のリポジトリはまず停止される。--writes local でアタッチされたフォークはオーバーレイの書き戻し先がないため、デタッチするとオーバーレイは破棄され、--discard が必要になる
rdc datastore detach <datastore> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--discard | local 書き込みフォークとそのオーバーレイを破棄する。データは復元できない | いいえ | - |
-y, --yes | 確認プロンプトをスキップする | いいえ | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
2.8 snapshot
データストアのポイントインタイムスナップショットを作成・一覧表示する。スナップショットは静止時に一切コストがかからず、フォークはここからクローンされる
create
データストアのポイントインタイムスナップショットを取得する。何も停止しない。この瞬間はクラッシュコンシステントであり、アプリケーションコンシステントではない: 特定の書き込みをスナップショットに含めたい場合は、事前に同期(sync)しておくこと。
rdc datastore snapshot create <datastore> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--snapshot <label> | スナップショットのラベル(デフォルト: UTC タイムスタンプ) | いいえ | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
list
データストアのスナップショットを一覧表示する
rdc datastore snapshot list <datastore> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
2.9 delete
データストアとその中身をすべて破棄する。まずデタッチを試み、正常にデタッチできない場合は、マウント中のプールを孤立させないよう削除自体を失敗させる
rdc datastore delete <datastore> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
-y, --yes | 確認プロンプトをスキップする | いいえ | - |
--force | リポジトリがまだそれを参照していても削除する。それらのデータも一緒に失われる | いいえ | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
3. マシン管理
リモートマシンの状態を調べる: システムリソース、実行中のコンテナ、systemd サービス、デプロイ済みリポジトリ、ヘルス診断。読み取り専用のクエリであり、リポジトリを変更するには `repo` を使用する。主なサブコマンド: status(--system、--containers、--repositories、--services で絞り込める完全な状態)、health、list、add、remove、setup、prune、provision、deprovision。
3.1 list
マシンをリスト表示する
rdc machine list [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--search <text> | {{field}}で検索 | いいえ | - |
--sort <field> | フィールドで並び替え | いいえ | - |
--desc | 降順でソート | いいえ | - |
3.2 health
CI/CDパイプライン用のマシン健全性を確認する
healthコマンドはシステムメトリクス、コンテナステータス、サービス安定性、ストレージ情報を出力します — CI/CDパイプラインチェックに便利です。
rdc machine health <name> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
-t, --team <name> | チーム名 | いいえ | - |
3.3 provision
OpenTofuを使用してクラウドプロバイダーに新しいマシンをプロビジョニングする
rdc machine provision <name> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--provider <name> | クラウドプロバイダー名(machine provider addから) | はい | - |
--region <region> | デフォルトリージョンを上書き | いいえ | - |
--type <type> | デフォルトインスタンスタイプを上書き | いいえ | - |
--image <image> | デフォルトOSイメージを上書き | いいえ | - |
--ssh-user <user> | 新しいVMのSSHユーザー名(デフォルト: root) | いいえ | - |
--base-domain <domain> | インフラストラクチャのベースドメイン(例: example.com)。--infra を含む | いいえ | - |
--no-infra | インフラ設定をスキップ(プロキシ + DNS) | いいえ | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
3.4 deprovision
クラウドでプロビジョニングされたマシンを破棄し、設定から削除する
rdc machine deprovision <name> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--force | 確認プロンプトをスキップする | いいえ | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
3.5 prune
孤立したデータストアリソースと古いスナップショットをマシンから削除する
rdc machine prune <name> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--dry-run | 変更を加えずに削除される内容を表示する | いいえ | - |
--orphaned-repos | ローカル CLI 設定に存在しないマシン上のリポジトリイメージをすべて削除する。粗い操作であり、renet ミラーがフォークだと正しく識別している場合でも、ローカル設定エントリがない他ツール作成のフォークまで削除してしまう。ミラーを尊重するより狭い挙動には --prune-unknown を使用すること。 | いいえ | - |
--prune-unknown | renet .interim/state ミラーが分類できないリポジトリのみを削除します(ローカル設定になく、かつフォークマークされたミラーがない)。--orphaned-repos より厳密に狭い:ミラーがそれらを識別する場合、設定なしのフォークは保持されます。プレミラーレガシー孤児と設定エントリが削除された古い grands は両方ともこのバケットに入ります。 | いいえ | - |
--force-delete-mounted | マウント安全プリフライトを上書きし、現在マウントされているか実行中の Docker コンテナがあってもリポジトリを削除します。--force(アーカイブ猶予期間のみを上書き)とは異なります。--orphaned-repos と --prune-unknown の両方に適用されます。 | いいえ | - |
--force | 確認プロンプトをスキップする | いいえ | - |
--grace-days <days> | 最近アーカイブされたリポジトリの猶予期間(日数、デフォルト: 7) | いいえ | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
3.6 add
現在の設定にマシンを追加
rdc machine add <name> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--ip <address> | マシン IP アドレスまたはホスト名 | はい | - |
--user <username> | SSH ユーザー名 | はい | - |
--port <port> | SSH ポート | いいえ | 22 |
3.7 infra
インフラ設定を管理する(プロキシ、DNS、証明書)
cert
キャッシュされたTLS証明書を管理
証明書キャッシュを削除
rdc machine infra cert clear
マシンからTLS証明書をダウンロードしてキャッシュ
rdc machine infra cert pull <machine> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--no-prune | 古いネットワークID証明書の整理をスキップ | いいえ | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
キャッシュされたTLS証明書をマシンにアップロード
rdc machine infra cert push <machine> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
キャッシュされた証明書のインベントリを表示
rdc machine infra cert status
push
インフラ設定をマシンにプッシュします(Traefik プロキシ、ルーター、Cloudflare DNS)。先に 'machine infra set <machine>' を実行してください
rdc machine infra push <machine> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
set
マシンのインフラ設定を行います(マシン固有: IP、ドメイン、ポート;共有: 証明書メール、CF DNS トークン)
rdc machine infra set <machine> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--public-ipv4 <ip> | パブリック IPv4 アドレス(マシンごと) | いいえ | - |
--public-ipv6 <ip> | パブリック IPv6 アドレス(マシンごと) | いいえ | - |
--base-domain <domain> | アプリケーション用ベースドメイン(マシンごと) | いいえ | - |
--cert-email <email> | TLS 証明書通知用メールアドレス(マシン間で共有) | いいえ | - |
--cf-dns-token <token> | ACME DNS-01 チャレンジ用 Cloudflare DNS API トークン(マシン間で共有) | いいえ | - |
--tcp-ports <ports> | 転送する TCP ポート(カンマ区切り、例: 25,143,465) | いいえ | - |
--udp-ports <ports> | 転送する UDP ポート(カンマ区切り、例: 53) | いいえ | - |
show
マシンのインフラ設定を表示する
rdc machine infra show <machine>
3.8 provider
自動マシンプロビジョニング用クラウドプロバイダーを管理する
add
クラウドプロバイダーを追加する
rdc machine provider add <name> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--provider <source> | 既知のプロバイダーソース(例: linode/linode, hetznercloud/hcloud) | いいえ | - |
--source <source> | カスタム OpenTofu プロバイダーソース(例: vultr/vultr) | いいえ | - |
--token <token> | クラウドプロバイダーの API トークン | はい | - |
--region <region> | 新規マシンのデフォルトリージョン | いいえ | - |
--type <type> | デフォルトのインスタンスタイプ/サイズ | いいえ | - |
--image <image> | デフォルトの OS イメージ | いいえ | - |
--ssh-user <user> | 新規 VM 用の SSH ユーザー名(デフォルト: root) | いいえ | - |
--resource <type> | カスタム: VM 用の OpenTofu リソースタイプ | いいえ | - |
--label-attr <attr> | カスタム: VM ラベルの属性名 | いいえ | - |
--region-attr <attr> | カスタム: リージョンの属性名 | いいえ | - |
--size-attr <attr> | カスタム: インスタンスタイプの属性名 | いいえ | - |
--image-attr <attr> | カスタム: OS イメージの属性名 | いいえ | - |
--ipv4-output <attr> | カスタム: IPv4 アドレスの出力属性 | いいえ | - |
--ipv6-output <attr> | カスタム: IPv6 アドレスの出力属性 | いいえ | - |
--ssh-key-attr <attr> | カスタム: SSH キーの属性名 | いいえ | - |
--ssh-key-format <format> | カスタム: SSH キーの形式(inline_list または resource_id) | いいえ | - |
--ssh-key-resource <type> | カスタム: SSH キー用の OpenTofu リソースタイプ | いいえ | - |
list
設定済みクラウドプロバイダーをリスト表示する
rdc machine provider list
remove
クラウドプロバイダー設定を削除する
rdc machine provider remove <name>
3.9 remove
現在の設定からマシンを削除する
rdc machine remove <name> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
-y, --yes | 確認プロンプトをスキップする | いいえ | - |
--force | リポジトリがまだ配置されていてもマシンを削除し、それらの配置をダングリング状態のまま残す。 | いいえ | - |
3.10 scan-keys
現在の設定のマシンの SSH ホストキーをスキャンする
rdc machine scan-keys [name]
3.11 setup
リモートマシンをリポジトリ用にプロビジョニング(renetインストール、Docker設定、BTRFSデータストア)。冪等。config machine addの後、repo createの前に必要
rdc machine setup <name> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--datastore-path <path> | リモートマシン上のデータストアパス | いいえ | /mnt/rediacc |
--datastore-size <size> | データストアサイズ(例: 95%、100G) | いいえ | 95% |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
3.12 status
マシンの完全なステータスを表示(システム、リポジトリ、コンテナ、サービス)
rdc machine status [name] [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
--system | システム情報のみを含める | いいえ | - |
--repositories | リポジトリのみを含める | いいえ | - |
--containers | コンテナのみを含める | いいえ | - |
--services | サービスのみを含める | いいえ | - |
--network | ネットワークインターフェースのみを含める | いいえ | - |
--block-devices | ブロックデバイスのみを含める | いいえ | - |
--licenses | リポジトリのライセンス状態を含める | いいえ | - |
--storage-health | リポジトリごとのBTRFSフラグメンテーションとreflink節約量を表示 | いいえ | - |
--datastores | アタッチされたデータストアを表示する(マウント、アタッチ、使用量) | いいえ | - |
--health-check | 健全性チェックモード - 不健全なものがある場合はコード2で終了します | いいえ | - |
--stability-check | 安定性チェックモード - 失敗/再起動中のものがある場合はコード2で終了します | いいえ | - |
--search <text> | リポジトリ名でフィルター | いいえ | - |
--sync-certs | クエリ後にマシンから ACME 証明書キャッシュも取得します | いいえ | - |
--strict | いずれかのコンテナがヘルスドリフトしきい値を超えた場合、ゼロ以外(コード 2)で終了します | いいえ | - |
4. クラスター管理
クラスターをプロビジョニングして管理する: プライベートネットワーク上のノードプール(ceph、k8s-server、k8s-agent、hyperconverged)の名前付きセットです。プールのメンバーはマシンとして実体化するため、あらゆる -m コマンドがそのまま使えます。
4.1 create
クラスターを宣言・プロビジョニングする: マシン、Ceph プール、Kubernetes。--provider と --pool を渡すと1ステップで宣言できる。引数なしの create は、既に宣言済みのクラスターをプロビジョニングする
rdc cluster create <cluster> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--provider <provider> | プロバイダー: cloudProviders のキー、または 'kvm' | いいえ | - |
--pool <spec...> | プール指定 name:role:count[:size](role: ceph|k8s-server|k8s-agent|hyperconverged) | いいえ | - |
--declare-only | プロビジョニングせずにクラスターを設定に記録する | いいえ | - |
--network-cidr <cidr> | プライベートネットワークの CIDR(例: 10.0.0.0/24) | いいえ | - |
--network-primitive <primitive> | ネットワークプリミティブ(例: vlan、vpc、network) | いいえ | - |
--control-node <machine> | コントロールノードとする明示的なマシン(デフォルト: 最初の k8s-server メンバー) | いいえ | - |
--net-name <name> | KVM: このクラスターの libvirt ネットワーク(例: renet12) | いいえ | - |
--net-base <prefix> | KVM: ネットワークプレフィックス、最初の3オクテット(例: 192.168.112) | いいえ | - |
--net-offset <n> | KVM: アドレスを導出する際に各 VM id に加算されるオフセット | いいえ | - |
--control-id <n> | KVM: コントロールおよびレジストリノードの VM id(デフォルト: 1) | いいえ | - |
--docker-registry <endpoint> | KVM: このクラスターの VM 内 Docker レジストリのエンドポイント | いいえ | - |
--ssh-user <user> | プロビジョニングされたメンバー用の SSH ユーザー | いいえ | - |
--base-domain <domain> | クラスターの公開 DNS 用ベースドメイン(未指定の場合は兄弟マシンから継承) | いいえ | - |
--control-ds-size <size> | アンカーコントロールデータストアのサイズ(デフォルト 10G) | いいえ | - |
--control-ds-backend <backend> | アンカーコントロールデータストアのバックエンド: local | ceph(デフォルト: クラスターに ceph があれば ceph、なければ local) | いいえ | - |
--control-ds-pool <pool> | アンカーコントロールデータストア用の Ceph rbd プール(ceph バックエンド) | いいえ | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
4.2 status
すべてのクラスターを一覧表示、または --name で特定クラスターの全設定を表示する。
rdc cluster status [cluster]
4.3 scale
プールのメンバー数を変更する(マシンの追加・削除、ノードの参加・排出)。k8s-agent プールはその場でスケールされ、ceph プールの拡張は cephadm 経由で直接行う。
rdc cluster scale <cluster> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--pool <pool> | プール名 | はい | - |
--count <n> | 希望するメンバー数 | はい | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
4.4 destroy
プロビジョニング済みのメンバーを解体し、クラスターとそのマシンを設定から削除する。
rdc cluster destroy <cluster> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--force | 確認をスキップし、解体中のエラーが出ても続行する | いいえ | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
4.5 kubeconfig
クラスターのコントロールノードから SSH 経由で kubeconfig を取得し、kubectl 用にローカルへキャッシュする(0600)。
rdc cluster kubeconfig <cluster>
4.6 fork
クラスター全体を、その配下のリポジトリのデータごと新しいクラスターへクローンする: クラスターイメージと PV イメージの copy-on-write を協調させたのち、ノードの identity を書き換えてフォークが新しいアドレスで起動する。複製元は動作を継続する。
rdc cluster fork <cluster> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--tag <tag> | フォークのタグ | はい | - |
--to <dest-cluster> | フォークをホストするノードを持つ移動先クラスター(そのコントロールノードとエージェント)。クラスターは自分自身のマシンへフォークできない(2つの k3s が同一のホストネットワーク名前空間を共有できないため) | はい | - |
--writes <disposition> | フォークの書き込み方式: local(一時的な dm-COW オーバーレイ、Ceph の使用量ゼロ) | ceph(永続的なクローン)。デフォルトは local | いいえ | - |
--up | フォークしたリポジトリを起動し、フォーク起動後にクラスターの健全性を確認する | いいえ | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
4.7 migrate
クラスター全体を、その配下のリポジトリのデータごと、別のマシンまたはデータセンターへ短いカットオーバーで移動する(実行中にホットプリコピーを行い、移動先で停止・再起動する)。
rdc cluster migrate <cluster> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--to <dest-cluster> | 移動先 | はい | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
4.8 join
既存の登録済みマシンを、クラスターの Kubernetes エージェントノードとして迎え入れる。アンカー構築や再参加時と同じ、CA 由来の join トークンを使用する。
rdc cluster join <machine> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--cluster <name> | マシンの参加先クラスター | はい | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
4.9 evict
ノードをドレインし、その Node オブジェクトを削除して、クラスターメンバーシップを解除する。クラスターはマシンから自動的に判定される。データストアをまだマウントしているマシンは拒否される。
rdc cluster evict <machine> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--force | ノードが既にダウンしている場合はドレインをスキップする | いいえ | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
4.10 rehearse
リリース/アップグレードをリハーサルする: クラスターを使い捨ての一時フォークとして目的地へフォークし(writes=local、シークレットを持たない role=rehearsal)、起動して健全性を確認したのち破棄する。複製元には一切手を加えない。
rdc cluster rehearse <cluster> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--on <dest-cluster> | 使い捨てのリハーサルを起動する移動先クラスター | はい | - |
--tag <tag> | リハーサルフォーク用のタグ(任意、デフォルトはタイムスタンプ) | いいえ | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
4.11 snapshot
クラスター全体のポイントインタイムスナップショット。クラスターが保有するすべての rbd バックエンドデータストアにわたる、クラッシュコンシステントな単一の瞬間を Ceph のグループスナップショットによって取得する: 何も停止せず、クラスターは何も気づかない。local バックエンドデータストアにはブロックレベルのグループプリミティブがないため、この瞬間の対象外となりその旨が報告される。この瞬間はクラッシュコンシステントであり、アプリケーションコンシステントではない: 特定の書き込みをスナップショットに含めたい場合は、事前に同期(sync)しておくこと。
create
クラスター内のすべての rbd バックエンドデータストアを、単一の瞬間でスナップショットする。何も停止しない。クラスター内の local バックエンドデータストアはこの瞬間の対象外として一覧表示され、スナップショットには含まれない。この瞬間はクラッシュコンシステントであり、アプリケーションコンシステントではない: 特定の書き込みをスナップショットに含めたい場合は、事前に同期(sync)しておくこと。
rdc cluster snapshot create <cluster> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--snapshot <label> | スナップショットのラベル(デフォルト: UTC タイムスタンプ) | いいえ | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
list
クラスターのグループスナップショットを一覧表示する
rdc cluster snapshot list <cluster> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
5. MCPサーバー
AIエージェント向けの Model Context Protocol サーバー
5.1 serve
MCP サーバーを起動する (stdio トランスポート)
rdc mcp serve [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--config <name> | すべてのコマンドに使用する設定名 | いいえ | - |
--timeout <ms> | デフォルトのコマンドタイムアウト (ミリ秒単位) | いいえ | 120000 |
6. リポジトリライフサイクル
マシン上の暗号化リポジトリをデプロイ・管理する。主なサブコマンド: create、up(デプロイ)、down(停止)、fork(即時 CoW クローン)、delete、push/pull(バックアップ)、sync(ファイル転送)。ライフサイクル: repo create → repo up → repo down。アーキテクチャ、ルーティング、環境変数の詳細は rdc --help の Key Concepts を参照。
6.1 up
リポジトリをデプロイまたは更新する(マウントし、renet compose を呼び出す Rediaccfile の up を実行する)。マシンは ref の配置から自動的に決まる。プロキシルートはデプロイ後 ~3 秒で有効になる。完了時に、HTTP 公開サービス(rediacc.service_port ラベル)の URL パターンを表示する。初回デプロイとフォークは自動的にマウントされる。CRIU チェックポイントの復元は自動検出される。新規に起動するには --skip-checkpoint を使用する。マシン上のすべてのリポジトリをデプロイするには --all --machine <m> を使用する
rdc repo up [ref] [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--no-start | up() の手順を実行せずにリポジトリをマウント・準備する(廃止された 'repo mount' を統合したもの。LUKS のオープン、クラスターリポジトリでは PV の生成を行う) | いいえ | - |
--skip-checkpoint | checkpoint データが存在しても CRIU checkpoint の復元をスキップする(強制的に新規起動) | いいえ | - |
--tls | このリポジトリ用の専用 TLS 証明書をリクエスト (フォークはデフォルトで共有マシン証明書を使用) | いいえ | - |
--no-wait | コンテナが起動した時点で戻る。ヘルスチェックはバックグラウンドで継続する | いいえ | - |
--all | --machine をホームとするすべてのリポジトリをデプロイする(バッチ形式) | いいえ | - |
-m, --machine <name> | --all と併用: バッチ処理の対象となるリポジトリを持つマシン | いいえ | - |
--include-forks | フォークされたリポジトリもマウント/開始する | いいえ | - |
--parallel | リポジトリを並行して開始する | いいえ | - |
--concurrency <n> | 最大同時リポジトリ数 (デフォルト: 3) | いいえ | 3 |
-y, --yes | バッチ操作の確認をスキップ | いいえ | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
--skip-router-restart | バイナリ更新後のルートサーバーの再起動をスキップする | いいえ | - |
--dry-run | 変更を加えずに実行内容を表示する | いいえ | - |
6.2 down
リポジトリの Docker コンテナを停止する(renet compose 経由で Rediaccfile の down を実行)。マシンは ref の配置から自動的に決まる。暗号化ボリュームはアンマウントしない -- リポジトリはマウントされたままとなり、'repo up' で再起動できる。停止後に LUKS コンテナも閉じるには --unmount を使用する(廃止された 'repo unmount' を統合したもの)。停止前に CRIU プロセス状態を保存するには --checkpoint を使用する(次回の 'repo up' で自動復元される)。マシン上のすべてのリポジトリを停止するには --all --machine <m> を使用する
rdc repo down [ref] [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--unmount | 停止後にアンマウントも行う(LUKS コンテナを閉じる)。'repo resize' の前、またはボリュームを完全に保護するために必要 | いいえ | - |
--checkpoint | 停止前に CRIU checkpoint を作成する(プロセスメモリ状態を保存し、後で 'repo up' で復元) | いいえ | - |
--all | --machine をホームとするすべてのリポジトリを停止する(バッチ形式) | いいえ | - |
-m, --machine <name> | --all と併用: バッチ処理の対象となるリポジトリを持つマシン | いいえ | - |
--parallel | リポジトリを並行して開始する | いいえ | - |
--concurrency <n> | 最大同時リポジトリ数 (デフォルト: 3) | いいえ | 3 |
-y, --yes | バッチ操作の確認をスキップ | いいえ | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
--skip-router-restart | バイナリ更新後のルートサーバーの再起動をスキップする | いいえ | - |
--dry-run | 変更を加えずに実行内容を表示する | いいえ | - |
6.3 status
リポジトリのステータスを取得する
rdc repo status <ref> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
--skip-router-restart | バイナリ更新後のルートサーバーの再起動をスキップする | いいえ | - |
6.4 cat
リポジトリ内のファイルを範囲指定で読み取り、stdout に書き出します(サーバー側で範囲制限あり。診断情報は stderr に出力)
rdc repo cat <ref> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--remote-file <path> | リポジトリマウントルートからの相対パスで読み取るファイルパス | はい | - |
--max-bytes <n> | 読み取って出力する最大バイト数(デフォルト 1 MiB、上限 50 MiB) | いいえ | - |
--offset <n> | 読み取りを開始するバイトオフセット | いいえ | - |
--head <lines> | 最初の N 行のみを出力する(バイト範囲との併用不可) | いいえ | - |
--tail <lines> | 最後の N 行のみを出力する(バイト範囲との併用不可) | いいえ | - |
--stat | サイズ、種類、更新日時のみを出力する(コンテンツは読み取らない) | いいえ | - |
--force-binary | バイナリ(NUL を含む)コンテンツの読み取りを許可する | いいえ | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
--skip-router-restart | バイナリ更新後のルートサーバーの再起動をスキップする | いいえ | - |
6.5 diff
コピーオンライトでフォークされた2つのリポジトリ間の、git風ファイル単位の差分。追加・変更・削除・リネームされたファイルを報告します。--name で与えられたリポジトリ(対象/新側)を、ローカル設定から解決した親、あるいは明示的な --base リポジトリ(基底/旧側)と比較します。メタデータのみでサイズに依存しません: 暗号化された LUKS イメージを復号せずブロックレベルで差分を取るため、1 GB のリポジトリと 100 GB のリポジトリが同じミリ秒で差分されます。
rdc repo diff <ref> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--base <ref> | 差分対象のリポジトリ(基底/旧側)。既定では --name の親 | いいえ | - |
--name-only | 変更されたファイルパスのみを1行ずつ出力(状態文字なし) | いいえ | - |
--stat | ファイルごとの変更量(バイトおよびブロックのデルタ)と合計を表示 | いいえ | - |
--content [path] | 単一ファイルの統一テキスト差分を表示(ファイルパスが必要) | いいえ | - |
--fast | ブロックフィルタを信頼し、コンテンツハッシュ確認を省略する(変更を過大報告する可能性あり) | いいえ | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
--skip-router-restart | バイナリ更新後のルートサーバーの再起動をスキップする | いいえ | - |
6.6 list
マシン上のリポジトリをリスト表示する
rdc repo list [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
-m, --machine <name> | 対象マシン名 | いいえ | - |
--datastore <name> | このデータストア内のリポジトリを一覧表示する(現在保持しているマシンへ自動的に解決される) | いいえ | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
--skip-router-restart | バイナリ更新後のルートサーバーの再起動をスキップする | いいえ | - |
6.7 create
新しいリポジトリを作成する。ホームを一度だけ指定する: マシンまたはデータストア
rdc repo create <name> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
-m, --machine <name> | 対象マシン名 | いいえ | - |
--datastore <name> | リポジトリを保持する名前付きデータストア(Docker の階層化、またはクラスター形式) | いいえ | - |
--size <size> | リポジトリサイズ(例: 10G、100G、1T) | いいえ | - |
--no-docker | 作成後に Docker デーモンの起動をスキップする | いいえ | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
--skip-router-restart | バイナリ更新後のルートサーバーの再起動をスキップする | いいえ | - |
6.8 delete
リポジトリとそのデータを削除する。設定エントリは保持される。--archive-config を使用すると、認証情報を deletedRepositories に移動し 'repo admin archive restore' で復元可能になる。位置引数として <ref> を取る。裸の名前はグランド系列に解決されるが、同じベース名を複数のリポジトリが共有している場合は拒否されるため、フォークを対象にするには 名前:タグ を指定すること
rdc repo delete <ref> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--archive-config | 設定エントリを deletedRepositories に移動して後から復元可能にする | いいえ | - |
-y, --yes | 確認プロンプトをスキップする | いいえ | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
--skip-router-restart | バイナリ更新後のルートサーバーの再起動をスキップする | いいえ | - |
--dry-run | 変更を加えずに実行内容を表示する | いいえ | - |
6.9 commit
マウント中の作業 fork の現在の状態を凍結し、新しいイミュータブルな commit を作成します(git ライク)。commit はメッセージ・作成者・タイムスタンプ・親をボリューム内に記録するため、push 時にも一緒に転送されます。また読み取り専用としてマークされ、マウントを拒否します。作業 fork は git が作業ツリーをそのまま残すのと同様に、変更されずに維持されます。書き込み可能なコピーを得るには 'rdc repo checkout' で commit をチェックアウトしてください。
rdc repo commit <ref> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--message <msg> | commit メッセージ | はい | - |
--author <author> | commit の作成者 | いいえ | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
6.10 branch
作業 fork の現在の commit(その先端)を指す名前付き branch 参照を作成します。branch 参照は CLI の設定内に保存されます(マシン = オブジェクトストア、設定 = 参照ストア)。
rdc repo branch <ref> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--branch <branch> | 新しいブランチの名前 | はい | - |
6.11 checkout
イミュータブルな commit(または branch の先端)を新しい書き込み可能な作業 fork に reflink クローンし、HEAD をそこに向けます。ほぼ瞬時かつ定数時間で完了します(BTRFS reflink)。
rdc repo checkout <commit-or-branch-ref> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--tag <name> | 新しい書き込み可能な作業 fork の名前 | はい | - |
--from <workingFork> | 位置引数 <commit-or-branch-ref> をこの作業フォーク上のブランチ名として解決します | いいえ | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
--skip-router-restart | バイナリ更新後のルートサーバーの再起動をスキップする | いいえ | - |
6.12 log
作業 fork の現在の commit(または commit 参照)から到達可能な commit 履歴を、'rdc repo commit' が記録した親チェーンをたどって表示します。ボリューム外のミラーを読み取るため、commit がアンロックされることはありません。
rdc repo log <ref> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
6.13 merge
ソースの commit または fork を対象の作業用 fork に merge します。稼働中の対象がその場で変更されることはありません。結果は reflink クローン上に構築され、アトミックに入れ替えられます。マウント中または実行中の対象は、--force を指定しない限り拒否されます。--force を指定した場合は、まず対象を安全に停止してから merge します。--resolve を指定しない場合は、イメージ全体の take-theirs となり (対象がソースに置き換わります)、--resolve ours|theirs を指定した場合は、共通の祖先に対するファイル単位の three-way merge となり、各サイド固有の変更を取り込み、両サイドで衝突する箇所はフラグに従って解決します。
rdc repo merge <ref> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--from <source> | merge 元となるソースの commit または fork | はい | - |
--force | マウント中/実行中の対象をまず停止してから merge します (稼働中のマウントを直接変更することはありません) | いいえ | - |
| `—resolve <ours | theirs>` | 3-way マージのファイル単位の競合解決: 'ours' はターゲット側のバージョンを保持し、'theirs' はソース側を採用します。省略するとイメージ全体の fast-forward(take-theirs)になります。 | いいえ |
--base <guid> | 3-way マージの共通祖先コミットの GUID(--resolve と併用)。既定ではソースコミットの親、またはターゲットの現在のコミット。 | いいえ | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
6.14 gc
どのブランチや HEAD からも到達できない不変コミットオブジェクトをマシン上から削除します(到達可能性 GC)。マシンがオブジェクトストア、CLI 設定が ref ストアです。既定はドライランで、削除するには --apply を指定します。マウント中のオブジェクトや作業中の fork には一切手を加えません。
rdc repo gc [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
-m, --machine <name> | 対象マシン名 | はい | - |
--apply | 到達不能なコミットを実際に削除する(既定はドライランのプレビュー) | いいえ | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
6.15 fork
リポジトリの CoW(コピーオンライト)フォークを作成する。フォークはリポジトリのサイズに関わらずほぼ瞬時かつ定数時間で完了する。BTRFS reflink が基盤イメージをクローンするため、100 GB のリポジトリと 1 GB のリポジトリが同じ数秒でフォークされる。フォークは新しい GUID、networkId、IP 範囲、自動ルートドメイン({service}-fork-{tag}.{repo}.{machine}.{baseDomain})を持ち、完全に独立したコピーとなる。オンラインフォークに対応しており、親は稼働したままでよい。フォークは親の暗号化認証情報を自動的に継承する。--checkpoint を使用するとフォーク前に CRIU プロセス状態をキャプチャし、フォークは最初の 'repo up' 時に自動復元される(メモリ内状態が保持される)。クロスマシンフォーク: まずローカルでフォークしてから転送する: (1) rdc repo fork <parent-ref> --tag <name>、(2) rdc repo push <fork-ref> --to <target-machine>、(3) rdc backup restore <fork-ref> --as <fork-name> -m <target-machine> --up。警告: フォークのために "repo push" だけを使用しないこと。同じ GUID を持つ生のコピーが作成される(独立したフォークではない)。常に先にフォークして新しい identity を取得すること。自動ルートはリポジトリ名を使用するため、各フォークは自動的に一意のドメインを取得する
rdc repo fork <ref> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--tag <name> | フォークのタグ(名前:タグを作成) | はい | - |
--checkpoint | fork 前にソースで CRIU checkpoint を作成する(fork 先での復元用にプロセスメモリ状態を取得) | いいえ | - |
--immutable | フォークを読み取り専用にします。マウントを拒否し、イメージをバイト単位で永続的に安定させます(マシン間デルタプッシュのための凍結されたコミット/ベース) | いいえ | - |
--up | fork後にマウントしてサービスを開始(fork + mount + upを1コマンドで) | いいえ | - |
--no-wait | --up と併用: コンテナ起動後すぐに戻ります。ヘルスチェックはバックグラウンドで継続します(使い捨てフォークに最適) | いいえ | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
--skip-router-restart | バイナリ更新後のルートサーバーの再起動をスキップする | いいえ | - |
6.16 replicate
データベースのサイズに関わらず、数秒でリポジトリのリードレプリカを N 個作成する。まずデータストアのスナップショットを1回取得し、そこからクラスターの各ノードに分散させる形で N 個の定数時間フォークアタッチ(コピーオンライト、使い捨てのローカル書き込み)を行い、生成されたオーバーレイを適用する: レプリカごとに固定された PersistentVolume を1つ、StatefulSet を1つ、そして2つの Service(プライマリ向けの {repo}-rw と、全レプリカにまたがる {repo}-ro)。レプリカは特定時点のコピーであり、レプリケーションストリームは存在せず、書き込み直後の読み取り整合性(read-your-writes)も保証しない。各レプリカはサービス提供の前に1回のクラッシュリカバリを実行する。'repo replicate refresh' で最新化できる。レプリカセットは管理された状態であり、'repo replicate status' で確認し、'repo replicate remove' で削除する。
status
管理下のレプリカセットを表示する: レプリカ、ホスティングノード、フォークしたデータストア、スナップショット、更新日時。
rdc repo replicate status <ref>
remove
レプリカセットを削除する: 生成された k8s オブジェクトを削除し(ラベルスコープで対象を特定)、フォークしたデータストアを破棄し、スナップショットを削除して、状態を忘れる。インフラ側の操作はベストエフォートで行われるため、クラスターの一部が既に失われていても削除処理は最終的に収束する。
rdc repo replicate remove <ref> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
refresh
すべてのレプリカを新しい特定時点のスナップショットへ、1台ずつ順番に切り替える: レプリカ Pod を再起動し、そのデータストアを同じパスのまま破棄して再フォークし、readiness チェックが通ったら再びトラフィックを受け付けさせる。この間、残りの N-1 台のレプリカはサービスを提供し続ける。
rdc repo replicate refresh <ref> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
6.17 canary
新しいイメージを安定版と並行して稼働させ、ライブトラフィックを両者へパーセンテージで振り分ける(リリースラダーの第2段)。同一のライブデータ上にカナリア用の Deployment と Service を1つ作成する(フォークはしない。フォークしたデータ上のカナリアユーザーは古いデータを読み、どのみち破棄されるコピーへ書き込むことになるため)。そして Rediacc プロキシに対し、安定版ホスト名宛てトラフィックのうち指定した割合をカナリアへルーティングするよう指示する。ウェイト 0 はカナリアをダークのままにし、ウェイト 100 は blue/green への完全切り替えとなる。カナリアを変更するたびに、クラスターのデータストアの自動グループスナップショットが取得され(リリースラダーの第0段)、万能の取り消し手段として機能する。両バージョン間のスキーマ互換性(expand-contract 方式)を保つのはアプリケーション側の責任である。スキーマを破壊する変更を伴うリリースでは、代わりに blue/green を使用する: リポジトリをフォークし(即時完了、データを含む)、フォークの Service のウェイトを 100 にしてここへ向け、手を加えていない複製元を再起動することでロールバックする。切り替え後に行われた書き込みは新しいコピーにのみ残るため、ロールバック可能な期間をどこまで確保するかはポリシー上の判断となる。
status
管理下のカナリアセットを表示する: ウェイト、イメージ、安定版 Service、直近のリリース取り消し用スナップショット。
rdc repo canary status <ref>
weight
カナリアへルーティングするトラフィックの割合を変更する。まず新しいリリース取り消し用のグループスナップショットを取得したうえでオーバーレイを再適用し、プロキシは次回の更新タイミングで新しい分割比率を反映する。ウェイトを 100 にするとすべてのトラフィックが新バージョンへ送られる(blue/green への完全切り替え)。
rdc repo canary weight <ref> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--weight <percent> | カナリアへ振り分けるトラフィックの割合(0-100 の整数。0 = ダーク、100 = 完全切り替え) | はい | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
remove
カナリアの Deployment と Service を削除する(ラベルスコープで対象を特定)。これにより安定版の Service が再び 100% のトラフィックを処理する。リリース取り消し用のスナップショットは保持されるので、データストアのスナップショットコマンドで整理する。
rdc repo canary remove <ref> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
create
安定版と並行して新しいイメージを実行し、ライブトラフィックの一部を送る。カナリアはリポジトリのライブデータを共有する(フォークしない)ため、両バージョン間のスキーマ互換性はアプリケーション側の責任となる。取り消し手段として、まずクラスターのデータストアのグループスナップショットを取得する
rdc repo canary create <ref> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--image <image> | カナリアの Deployment が実行する新しいイメージ(共有の本番データに対して) | はい | - |
--port <port> | アプリが待ち受けるポート(安定版の Service と一致させること) | はい | - |
--weight <percent> | カナリアへ振り分けるトラフィックの割合(0-100 の整数。0 = ダーク、100 = 完全切り替え) | はい | - |
--service <name> | トラフィックを分割する対象の安定版 Service(デフォルト: リポジトリ名) | いいえ | - |
--replicas <n> | カナリア Deployment のレプリカ数(デフォルト: 1) | いいえ | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
6.18 resize
リポジトリをオフラインでリサイズ(拡張と縮小をサポート)
rdc repo resize <ref> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--size <size> | 新しいリポジトリサイズ(例: 10G、100G、1T) | はい | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
--skip-router-restart | バイナリ更新後のルートサーバーの再起動をスキップする | いいえ | - |
6.19 expand
マウント済みリポジトリをオンラインで拡張(ゼロダウンタイム)
rdc repo expand <ref> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--size <size> | 新しいリポジトリサイズ(例: 10G、100G、1T) | はい | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
--skip-router-restart | バイナリ更新後のルートサーバーの再起動をスキップする | いいえ | - |
6.20 trim
マウント済みリポジトリからデータストアプールの空き領域を回収する(オンライン、停止なし)。リポジトリ内で削除されたブロックは fstrim でプールに返される。ref を省略すると、-m 上のマウント済みのすべてのリポジトリとデータストア自体をトリムする。バックアップ実行中のリポジトリでは fstrim はスキップされるが、--docker の回収は引き続き実行される
rdc repo trim [ref] [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--docker | Docker の領域を回収(停止中コンテナ、宙吊りイメージ、ビルドキャッシュ)。バックアップのスナップショットが有効な間も実行されます | いいえ | - |
--docker-volumes | 未使用の Docker ボリュームも削除する | いいえ | - |
--report-only | トリムせずに discard 状態と回収可能量の見積もりを表示する | いいえ | - |
-m, --machine <name> | 対象マシン名 | いいえ | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
6.21 policy
マシンのストレージメンテナが適用する自動サイズポリシーを管理する: リポジトリが満杯に近づくとクォータをオンラインで拡大し(max-quota を超えず、プール残量が少ないときは拡大しない)、スケジュールされたトリムを実行する。自動縮小はない。縮小には 'repo resize' を使用する。ref を省略すると、-m のマシン全体のデフォルトポリシーを対象とする
set
サイズポリシーのフィールドを設定します。渡したフラグだけが変更され、他の保存済みフィールドは値を保持します。自動拡大の有効化には --max-quota が必要です。上限はプールのオーバープロビジョニングへの明示的な同意です
rdc repo policy set [ref] [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--auto-grow <bool> | クォータのオンライン自動拡大を有効化(true/false) | いいえ | - |
--max-quota <size> | 自動拡大の上限(例: 200G)。自動拡大には必須 | いいえ | - |
--grow-threshold <percent> | 拡大を引き起こすファイルシステム使用率 %(デフォルト 85) | いいえ | - |
--grow-step <step> | 1 ステップの拡大量: 絶対値(10G)またはクォータの割合(20%) | いいえ | - |
--auto-trim <bool> | スケジュールトリムを有効化(true/false) | いいえ | - |
--trim-interval <hours> | 自動トリムの最小間隔(時間、デフォルト 24) | いいえ | - |
-m, --machine <name> | 対象マシン名 | いいえ | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
get
保存されたマシンデフォルト、リポジトリの上書き(ref 指定時)、メンテナが実際に適用するマージ済みの有効ポリシーを表示する
rdc repo policy get [ref] [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
-m, --machine <name> | 対象マシン名 | いいえ | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
6.22 push
リポジトリをリモート(マシンまたはストレージ)にプッシュ。ターゲットタイプは設定から自動検出。マシン間転送では、暗号化されたリポジトリイメージが同じGUIDでコピーされます — これはバックアップ/移行であり、forkではありません。独立したforkを作成するには、まず'repo fork'を使用してからpush。プッシュされたコピーはバックアップアーティファクトとして配置されます: 'backup restore <ref> --as <name> -m <target> --up' でターゲット上に起動してください
rdc repo push <ref> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--to <remote> | 宛先マシンまたはストレージ名(設定から自動検出) | いいえ | - |
--to-machine <machine> | — | いいえ | - |
--provision <provider> | ターゲットマシンが存在しない場合、クラウドプロバイダー経由で自動プロビジョニング | いいえ | - |
--checkpoint | バックアップ前にCRIUチェックポイントを作成(ライブマイグレーション用にプロセスメモリ状態をキャプチャ) | いいえ | - |
--force | 既存のバックアップを強制的に上書きする | いいえ | - |
-w, --watch | 変更を監視する | いいえ | - |
--bwlimit <limit> | rsync転送の帯域幅制限(例: "6M", "10M") | いいえ | - |
--delta-base <guid> | 両マシンにバイト単位で同一に存在するイミュータブルなベースGUID。変更されたブロックのみを転送(マシンターゲット)。省略すると自動ベースで手間なく処理 | いいえ | - |
--strategy <strategy> | 差分ベース使用時のブロック差分戦略: auto、physical、または shared | いいえ | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
--skip-router-restart | バイナリ更新後のルートサーバーの再起動をスキップする | いいえ | - |
6.23 pull
リモート(マシンまたはストレージ)からリポジトリをプル。名前を省略するとすべてのリポジトリをプル。ソースタイプは設定から自動検出。pull後にデプロイするには--upを使用
rdc repo pull <ref> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--from <remote> | ソースマシンまたはストレージ名(設定から自動検出) | いいえ | - |
--from-machine <machine> | — | いいえ | - |
--force | 既存のリポジトリを強制的に上書きする | いいえ | - |
--up | pull後、このマシンでリポジトリをマウントしてデプロイ | いいえ | - |
-w, --watch | 変更を監視する | いいえ | - |
--bwlimit <limit> | rsync転送の帯域幅制限(例: "6M", "10M") | いいえ | - |
--delta-base <guid> | 両マシンにバイト単位で同一に存在するイミュータブルなベースGUID。変更されたブロックのみを受信(マシンソース) | いいえ | - |
--strategy <strategy> | 差分ベース使用時のブロック差分戦略: auto、physical、または shared | いいえ | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
--skip-router-restart | バイナリ更新後のルートサーバーの再起動をスキップする | いいえ | - |
6.24 migrate
リポジトリを最小限のダウンタイムで別のマシンへライブマイグレーションする。二段階の rsync: 稼働中に一括転送し、その後短時間停止してデルタ同期を行う。リポジトリ全体を移動し(ルーティングは新しい場所に再設定される)、移動成功後にソースイメージを削除する(保持するには --keep-source を使用)。プロセスのメモリ状態を移行する CRIU チェックポイントと、ターゲットマシンの自動プロビジョニングをサポートする
rdc repo migrate <ref> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--to <place> | 移行先マシンまたはクラスター | はい | - |
--provision <provider> | クラウドプロバイダー経由でターゲットを自動プロビジョニング(例: hetzner, linode) | いいえ | - |
--bwlimit <limit> | rsync転送の帯域幅制限(例: 10M) | いいえ | - |
--checkpoint | CRIUライブマイグレーション: プロセスメモリ状態のキャプチャと復元 | いいえ | - |
--delta-base <guid> | 切り替え差分用のイミュータブルなベースGUID(上級者向け。既定はフェーズ1のベース) | いいえ | - |
--strategy <strategy> | 切り替え時のブロック差分戦略: auto、physical、または shared | いいえ | - |
--skip-dns | 移行後のDNSレコード切り替えをスキップ | いいえ | - |
--keep-source | 移動成功後もソースイメージを保持する(デフォルトでは削除される。残されたコピーはどの設定レコードからも参照できず、reconcile によって迷子として検出される) | いいえ | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
6.25 sync
リポジトリとファイルの同期(一括プッシュ/プル、ファイル転送)
upload
リポジトリにファイルをアップロード
rdc repo sync upload <ref> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--local <paths...> | 1 つ以上のローカルファイルまたはディレクトリのパス(既定: カレントディレクトリ) | いいえ | - |
--remote <path> | リポジトリ内のリモートサブディレクトリパス | いいえ | - |
--remote-file <path> | アップロード先となる単一のリモートファイルパス(リポジトリのルート相対)。--remote とは併用できません。 | いいえ | - |
--mirror | ミラーモード - ローカルに存在しないリモートファイルを削除 | いいえ | - |
--verify | 同期後にチェックサムを使用してファイルを検証する | いいえ | - |
--confirm | 同期前に変更をプレビューして確認を要求する | いいえ | - |
--exclude <patterns...> | 同期から除外するパターン | いいえ | - |
--dry-run | 変更を加えずに実行内容を表示する | いいえ | - |
download
リポジトリからファイルをダウンロード
rdc repo sync download <ref> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--local <path> | ローカルディレクトリパス (デフォルト: 現在のディレクトリ) | いいえ | - |
--remote <path> | リポジトリ内のリモートサブディレクトリパス | いいえ | - |
--remote-file <path> | リポジトリ内のリモートファイルパス(単一ファイル転送時の --remote の代替) | いいえ | - |
--mirror | ミラーモード - リモートに存在しないローカルファイルを削除 | いいえ | - |
--verify | 同期後にチェックサムを使用してファイルを検証する | いいえ | - |
--confirm | 同期前に変更をプレビューして確認を要求する | いいえ | - |
--exclude <patterns...> | 同期から除外するパターン | いいえ | - |
--dry-run | 変更を加えずに実行内容を表示する | いいえ | - |
status
同期ステータスを確認しローカル/リモートファイルを比較
rdc repo sync status <ref> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--local <path> | ローカルディレクトリパス (デフォルト: 現在のディレクトリ) | いいえ | - |
--remote <path> | リポジトリ内のリモートサブディレクトリパス | いいえ | - |
--remote-file <path> | リポジトリ内のリモートファイルパス(単一ファイル転送時の --remote の代替) | いいえ | - |
6.26 tunnel
リモートマシン上のコンテナポートへのSSHポートフォワードトンネルを作成。コンテナとポートが一意の場合は自動検出。Ctrl+Cを押すまでトンネルは開いたままになります
rdc repo tunnel <ref> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
-c, --container <name> | コンテナ名(実行中のコンテナが1つの場合は自動検出) | いいえ | - |
--port <port> | 転送するリモートコンテナポート | いいえ | - |
--local <port> | ローカルポート(デフォルトはリモートポートと同じ) | いいえ | - |
--url-only | トンネルが準備できたらローカル URL のみを表示する(スクリプト向け) | いいえ | - |
6.27 secret
デプロイ時に注入されるリポジトリ単位のシークレットを管理する。書き込み専用: get はダイジェストのみを返し(平文は返さない)、set/unset には --current によるダイジェスト一致または --rotate-secret が必要。配信モードは2種類: env(REDIACC_SECRET_<KEY>)と file(compose の `secrets:` 経由で /var/run/rediacc/secrets/<networkId>/<KEY> の tmpfs に配置)。シークレットは暗号化された LUKS イメージには一切入らないため、フォークはシークレットを一切継承しない。
get
シークレットの SHA-256 ダイジェストを表示する。平文値は設計上決して返されない(書き込み専用)。既知の値を確認するには、後続の set/unset で --current を使用するか、`set --rotate-secret` でローテーションすること。
rdc repo secret get <ref> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--key <KEY> | UPPER_SNAKE_CASE 形式のシークレットキー(最大 64 文字)。env モードでは REDIACC_SECRET_<KEY> として、file モードではコンテナ内の /run/secrets/<key> として公開されます。 | はい | - |
list
シークレットのキーとモードを一覧表示(値もダイジェストも決して返しません)。
rdc repo secret list <ref>
set
シークレットを設定または上書き。フォークは継承しません。フォーク上に明示的に設定してください。エージェントコンテキストでは --current ダイジェスト一致が必要です(passwd スタイル)。
rdc repo secret set <ref> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--key <KEY> | UPPER_SNAKE_CASE 形式のシークレットキー(最大 64 文字)。env モードでは REDIACC_SECRET_<KEY> として、file モードではコンテナ内の /run/secrets/<key> として公開されます。 | はい | - |
--value <value> | シークレット値。`-` を渡して stdin から読み取ります(シェル履歴への露出を回避)。 | はい | - |
--mode <mode> | 配信モード: 'env'(コンテナ環境、docker inspect で表示)または 'file'(tmpfs ファイル、env には決して入らない)。デフォルト: file。 | いいえ | file |
--current <value> | 以前の平文値(passwd スタイルの事前条件)。上書き/削除には必須。--rotate-secret とは併用不可。 | いいえ | - |
--rotate-secret | ローテーションを承認;--current 前提条件をスキップ(ローテーションとして監査)。前の値を確認せずに意図的にローテーションする場合に使用。 | いいえ | - |
unset
シークレットを削除します。エージェントコンテキストでは --current ダイジェスト一致が必要です。
rdc repo secret unset <ref> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--key <KEY> | UPPER_SNAKE_CASE 形式のシークレットキー(最大 64 文字)。env モードでは REDIACC_SECRET_<KEY> として、file モードではコンテナ内の /run/secrets/<key> として公開されます。 | はい | - |
--current <value> | 以前の平文値(passwd スタイルの事前条件)。上書き/削除には必須。--rotate-secret とは併用不可。 | いいえ | - |
--rotate-secret | ローテーションを承認;--current 前提条件をスキップ(ローテーションとして監査)。前の値を確認せずに意図的にローテーションする場合に使用。 | いいえ | - |
6.28 admin
リポジトリの管理・保守用コマンド群
archive
アーカイブ済みリポジトリレコードの管理
アーカイブ済みリポジトリ資格情報をリスト表示する
rdc repo admin archive list
アーカイブ済み資格情報をすべて完全に削除する
rdc repo admin archive purge [name] [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
-y, --yes | 確認プロンプトをスキップする | いいえ | - |
アーカイブ済みリポジトリ資格情報を復元する
rdc repo admin archive restore <name> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--new-name <name> | 新しいリソース名 | いいえ | - |
validate
リポジトリの整合性を検証する
rdc repo admin validate <ref> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
--skip-router-restart | バイナリ更新後のルートサーバーの再起動をスキップする | いいえ | - |
fsck
CLI 設定の ref(ブランチ、HEAD)を、マシン上に実際に存在するオブジェクトと照合して検証します。ダングリング ref(存在しないオブジェクトを指す ref)と孤立コミット(どの ref からも到達できない不変コミット)を報告します。読み取り専用です。
rdc repo admin fsck [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
-m, --machine <name> | 対象マシン名 | はい | - |
ownership
リポジトリディレクトリの所有権を変更する
rdc repo admin ownership <ref> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--uid <uid> | 所有者UID(デフォルト: 7111) | いいえ | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
--skip-router-restart | バイナリ更新後のルートサーバーの再起動をスキップする | いいえ | - |
autostart
起動時の自動リポジトリ開始を管理する
リポジトリの自動開始を有効にする
rdc repo admin autostart enable [ref] [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
--skip-router-restart | バイナリ更新後のルートサーバーの再起動をスキップする | いいえ | - |
リポジトリの自動開始を無効にする
rdc repo admin autostart disable [ref] [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
--skip-router-restart | バイナリ更新後のルートサーバーの再起動をスキップする | いいえ | - |
自動開始が有効なリポジトリを一覧表示する
rdc repo admin autostart list [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
-m, --machine <name> | 対象マシン名 | はい | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
--skip-router-restart | バイナリ更新後のルートサーバーの再起動をスキップする | いいえ | - |
template
リポジトリにテンプレートを適用する
CLIに組み込まれたすべてのデプロイテンプレートを一覧表示
rdc repo admin template list
リポジトリにテンプレートを適用します。組み込みテンプレート名(例: app-postgres)を使用するか、カスタム JSON テンプレートには --file を使用してください。Rediaccfile のライフサイクル: up() はコンテナを起動します(イメージの pull、設定生成はここで行う)、down() は停止します。最小構成の Rediaccfile: up() { renet compose -- pull; renet compose -- up -d; } down() { renet compose -- down; }。重要: Rediaccfile は必ず 'renet compose' を使用してください。'docker compose' は拒否されます。環境変数: 2 つのレベルがあります。(a) Rediaccfile シェル: ${SVCNAME_IP}(例: APP_IP)、${REDIACC_WORKING_DIR}、${REDIACC_NETWORK_ID}。(b) コンテナ内部: renet が SERVICE_IP と REDIACC_NETWORK_ID 環境変数を自動的に注入します。eBPF バインド書き換えが IP 分離を透過的に処理するため、アプリは 0.0.0.0 にバインドでき、カーネルが正しいループバック IP に書き換えます。ヘルスチェックは localhost を使用できます。network_mode:host が注入され、ports: は無視されます。ストレージ: ${REDIACC_WORKING_DIR}/... へのバインドマウントと Docker の named volume はどちらも安全です。Docker の data-root は暗号化された LUKS マウント内にあります。再起動ポリシー: 再起動ポリシーは安全です。renet が CRIU 互換性のために自動的に取り除き、watchdog が復旧を処理します。Compose: network_mode や rediacc.* ラベルは追加しないでください(renet が注入します)。マルチプロジェクト: 各サブプロジェクトを独自の Rediaccfile を持つ専用のサブディレクトリに配置してください。renet が自動的に検出し、順番に実行します。HTTPS ルーティング: (A) 自動ルート(フォークフレンドリー、推奨): traefik.enable を追加しないでください。Renet が https://{serviceName}.{repoName}.{machineName}.{baseDomain} を自動生成します。80 番以外のポートには rediacc.service_port=<port> ラベルを追加してください。各フォークは一意のドメインを取得します。(B) Traefik ラベル(カスタムドメイン、フォークフレンドリーではない): traefik.enable=true、traefik.http.routers.<n>.rule=Host(`domain`)、traefik.http.routers.<n>.entrypoints=websecure,websecure-v6、traefik.http.routers.<n>.tls.certresolver=letsencrypt、traefik.http.services.<n>.loadbalancer.server.port=<port>。TCP/UDP の場合: rediacc.tcp_ports=3306 / rediacc.udp_ports=53
rdc repo admin template apply <ref> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--template <name> | 適用するテンプレート | はい | - |
--file <path> | カスタムテンプレート JSON ファイルのパス({"version":"2","files":{"Rediaccfile":"...","docker-compose.yml":"..."}}): 組み込みテンプレート名を上書きします | いいえ | - |
--grand <name> | グランドリポジトリ名 (自動的に GUID に解決) | いいえ | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
--skip-router-restart | バイナリ更新後のルートサーバーの再起動をスキップする | いいえ | - |
6.29 promote
グランドリポジトリのデータをフォークのデータで置き換えます。グランドはその ID(GUID、networkId、ドメイン、自動起動、バックアップチェーン)を保持しつつ、フォークの更新されたデータを取得します。古い本番データはバックアップフォークとして保存されます。使用方法: フォークでアップグレードをテスト → 確認 → 本番への引き継ぎ。
rdc repo promote <fork-ref> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
-y, --yes | 確認プロンプトをスキップする | いいえ | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
--skip-router-restart | バイナリ更新後のルートサーバーの再起動をスキップする | いいえ | - |
6.30 logs
リポジトリのコンテナからアプリケーションログを表示する。Docker リポジトリではリポジトリ自身の Docker デーモンから読み取り、Kubernetes リポジトリではリポジトリの namespace 内の Pod ログを読み取る。リポジトリが複数のコンテナを実行している場合は、--container で対象を指定する
rdc repo logs <ref> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
-c, --container <name> | ログを読み取るコンテナ(リポジトリが複数のコンテナを実行している場合のみ必要) | いいえ | - |
-f, --follow | 中断されるまで新しい行をストリーミングし続ける | いいえ | - |
--lines <n> | 表示する履歴の行数(デフォルト: 100) | いいえ | 100 |
--timestamps | 各行の先頭にタイムスタンプを付ける | いいえ | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
6.31 exec
リポジトリのコンテナ内でコマンドを実行する。コマンド自身の終了コードがそのまま返されるため、スクリプトや条件分岐でも利用できる。Docker リポジトリではリポジトリの Docker デーモン経由で実行され、Kubernetes リポジトリではリポジトリの namespace 内で実行される
rdc repo exec <ref> <cmd...> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
-c, --container <name> | 実行対象のコンテナ(リポジトリが複数のコンテナを実行している場合のみ必要) | いいえ | - |
-i, --interactive | ターミナルを割り当てる(ターミナルを前提とするコマンド向け) | いいえ | - |
-u, --user <user> | コマンドを実行するユーザー | いいえ | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
7. デタッチジョブ
マシン上のデタッチジョブを管理します。一覧表示、ステータス確認、イベントログの再生またはフォロー、ジョブのキャンセル、完了済みジョブのガベージコレクションが行えます。デタッチジョブはマシン上で systemd によって実行されるため、接続が切断されても存続し、後で再アタッチできます。
7.1 list
マシン上のデタッチジョブを新しい順に一覧表示
rdc job list [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
-m, --machine <name> | 対象マシン名 | はい | - |
7.2 status
デタッチジョブのステータスを表示
rdc job status <job-id> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
-m, --machine <name> | 対象マシン名 | はい | - |
7.3 logs
デタッチジョブのイベントログを再生またはフォロー
rdc job logs <job-id> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
-m, --machine <name> | 対象マシン名 | はい | - |
-f, --follow | ジョブが完了するまでストリーミング | いいえ | - |
--since-line <n> | 指定した行数の続きから再開(すでに受信済みの行数) | いいえ | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
7.4 cancel
実行中のデタッチジョブをキャンセル
rdc job cancel <job-id> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
-m, --machine <name> | 対象マシン名 | はい | - |
-y, --yes | 確認プロンプトをスキップする | いいえ | - |
7.5 gc
完了済みジョブとそのログを削除
rdc job gc [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
-m, --machine <name> | 対象マシン名 | はい | - |
--older-than <duration> | 指定した時間(単位:時間)より前に完了したジョブを収集します(デフォルト: 168) | いいえ | - |
-y, --yes | 確認プロンプトをスキップする | いいえ | - |
8. バックアップと復元
バックアップ戦略、そのスケジュール実行、および生成されるアーティファクトを管理する: リポジトリに対して戦略を宣言し、必要に応じて実行・復元し、ストレージエンドポイントに書き出されたアーカイブを確認する
8.1 schedule
リモートマシンにバックアップスケジュールをデプロイする(systemd タイマー)
rdc backup schedule [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
-m, --machine <name> | マシン名 | はい | - |
--dry-run | デプロイせずに生成されるユニットをプレビュー | いいえ | - |
--force | 現在バックアップが実行中でも続行する(新しいユニットは次のタイマーティックで適用され、実行中の呼び出しは古いユニットを保持) | いいえ | - |
--reset-failed | デプロイ成功後、変更したサービスの失敗状態をクリアする(既定は無効、失敗シグナルを保持) | いいえ | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
8.2 cancel
リモートマシン上の実行中バックアップをキャンセル
rdc backup cancel [strategy] [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
-m, --machine <name> | マシン名 | はい | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
8.3 list
マシンまたはストレージ上のバックアップアーティファクトを一覧表示する
rdc backup list [artifact-ref] [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
-m, --machine <name> | マシン名 | いいえ | - |
--storage <name> | このストレージエンドポイント上のアーティファクトを一覧表示する | いいえ | - |
--path <subdir> | ストレージルート内のサブディレクトリ。省略時は hot/ と cold/ の両方を一覧表示してマージする | いいえ | - |
-w, --watch | 変更を監視する | いいえ | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
8.4 restore
バックアップアーティファクトを稼働中のリポジトリに変換する。配置先はここで指定する
rdc backup restore <artifact-ref> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--as <name> | 復元後のリポジトリ名(デフォルトはアーティファクト名) | いいえ | - |
-m, --machine <name> | マシン名 | いいえ | - |
--datastore <name> | この名前付きデータストアに復元する(アタッチ先のマシンがホストする) | いいえ | - |
--up | 転送後に復元したリポジトリをデプロイする | いいえ | - |
--health-window <seconds> | ヘルスゲート全体のウィンドウ秒数(デフォルト 300) | いいえ | - |
--health-timeout <seconds> | ヘルスチェック1回あたりのタイムアウト秒数(デフォルト 30) | いいえ | - |
-y, --yes | 確認プロンプトをスキップする | いいえ | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
8.5 run
リモートマシンで今すぐバックアップを実行
rdc backup run [strategy] [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
-m, --machine <name> | マシン名 | はい | - |
-w, --watch | 変更を監視する | いいえ | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
8.6 status
リモートマシンのバックアップ状態とタイマー状態を表示
rdc backup status [strategy] [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
-m, --machine <name> | マシン名 | はい | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
8.7 strategy
名前付きバックアップ戦略を管理(ホット/コールドモード、宛先、スケジュール)
set
バックアップ戦略を作成または更新
rdc backup strategy set <strategy> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--destination <name> | 戦略内の宛先名 | いいえ | - |
--storage <name> | ストレージ設定名(rclone資格情報) | いいえ | - |
--cron <expression> | cronスケジュール(例: "0 * * * *" で毎時実行) | いいえ | - |
--mode <mode> | バックアップモード: "hot"(ダウンタイムなし)または "cold"(停止、スナップショット、再起動) | いいえ | - |
--bwlimit <limit> | rclone帯域幅制限(例: "6M"、"10M:off"、"08:00,3M;22:00,10M") | いいえ | - |
--include <repos> | これらのリポジトリのみバックアップ(カンマ区切りの名前) | いいえ | - |
--exclude <repos> | これらのリポジトリをバックアップから除外(カンマ区切りの名前) | いいえ | - |
--folder <path> | この宛先のストレージバケット内のサブフォルダー(例: hot, cold) | いいえ | - |
--enable | 戦略または宛先を有効にする | いいえ | - |
--disable | 戦略または宛先を無効にする | いいえ | - |
bind
バックアップ戦略をマシンに紐付け、そのスケジュールをそこにデプロイする
rdc backup strategy bind <strategy> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
-m, --machine <name> | 対象マシン名 | はい | - |
unbind
バックアップ戦略をマシンから切り離す
rdc backup strategy unbind <strategy> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
-m, --machine <name> | 対象マシン名 | はい | - |
remove
バックアップ戦略または宛先を削除
rdc backup strategy remove <strategy> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--destination <name> | この宛先のみ削除(他の宛先は保持) | いいえ | - |
list
すべてのバックアップ戦略を一覧表示
rdc backup strategy list
show
バックアップ戦略の詳細を表示
rdc backup strategy show [strategy]
9. ストレージ管理
外部バックアップストレージエンドポイント(S3 やその他の rclone 互換先)を管理する: 登録・削除、登録済み一覧の表示、保持しているアーティファクトの閲覧、孤立したバックアップの整理を行う。
9.1 list
ストレージエンドポイントを一覧表示する。名前を指定すると詳細を表示する
rdc storage list [name] [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--reveal | ストレージ構成を平文で表示する(対話型 TTY のみ、監査ログに記録) | いいえ | - |
9.2 browse
ストレージシステム内のファイルを参照する
rdc storage browse <storage> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--path <subpath> | リスト表示するサブディレクトリのパス | いいえ | “ |
9.3 prune
どの設定にも存在しなくなった孤立したバックアップをストレージから削除します。マルチ設定対応で猶予期間による保護付き。
rdc storage prune <storage> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
-m, --machine <name> | 実行マシン、rclone のリスト/削除呼び出しをストレージに対して実行します。クライアントはローカルに rclone がインストールされていることが期待されないため必須です;ストレージの認証情報は引き続きローカル設定から取得されます。 | はい | - |
--dry-run | 変更を加えずに実行内容を表示する | いいえ | - |
--force | 確認プロンプトをスキップする | いいえ | - |
--force-delete-mounted | マウント安全チェックを上書きし、ソース GUID が現在実行マシンにマウントされているか実行中のコンテナを持っていてもクラウドバックアップを削除します。--force(アーカイブ済みリポジトリの猶予期間のみを上書き)とは異なります。 | いいえ | - |
--grace-days <days> | 最近アーカイブされたリポジトリの猶予期間(日数、デフォルト: 7) | いいえ | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
--skip-router-restart | バイナリ更新後のルートサーバーの再起動をスキップする | いいえ | - |
9.4 add
ストレージエンドポイントを登録する
rdc storage add <name> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--vault <json> | JSON 文字列としてのボルトコンテンツ | はい | - |
9.5 import
rclone 設定ファイルからストレージをインポートする
rdc storage import <file> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--name <name> | 指定したセクションのみインポートする | いいえ | - |
9.6 remove
設定からストレージエンドポイントを削除する
rdc storage remove <name> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
-y, --yes | 確認プロンプトをスキップする | いいえ | - |
--dry-run | 変更を加えずに実行内容を表示する | いいえ | - |
10. VS Code統合
マシンまたはリポジトリへの VS Code Remote SSH を開く
10.1 connect
マシン上、またはリポジトリ内で VS Code を開く
rdc vscode connect <target> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
-f, --folder <path> | リモートフォルダーパス | いいえ | - |
--url-only | VS Code URI を印刷して起動しない | いいえ | - |
-n, --new-window | 新しい VS Code ウィンドウで開く | いいえ | - |
--skip-env-setup | リモート環境セットアップをスキップする | いいえ | - |
--insiders | VS Code Insiders 設定を使用する | いいえ | - |
--browser | リポジトリサンドボックスからブラウザ VS Code を提供する(ローカルの VS Code 不要) | いいえ | - |
--no-open | ローカルブラウザを起動せずに URL のみを表示する | いいえ | - |
--local <port> | ローカルポート(デフォルトはリモートポートと同じ) | いいえ | - |
--server-provider <id> | ブラウザ VS Code サーバー実装 (openvscode, code-server) | いいえ | - |
--server-archive <file> | マシン上に事前配置されたサーバー tarball のパス(エアギャップインストール用) | いいえ | - |
10.2 list
設定済みの VS Code SSH 接続をリスト表示する
rdc vscode list
10.3 cleanup
VS Code SSH 設定を削除する
rdc vscode cleanup [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--all | すべての rediacc SSH 設定を削除する | いいえ | - |
-c, --connection <name> | 特定の接続を削除する | いいえ | - |
10.4 check
VS Code のインストールと設定を確認する
rdc vscode check [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--insiders | VS Code Insiders 設定を使用する | いいえ | - |
10.5 serve
サンドボックス内のブラウザ VS Code サーバーを管理する
status
ブラウザ VS Code サーバーが起動しているか確認する
rdc vscode serve status <target> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--server-provider <id> | ブラウザ VS Code サーバー実装 (openvscode, code-server) | いいえ | - |
stop
ブラウザ VS Code サーバーを停止する
rdc vscode serve stop <target> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--server-provider <id> | ブラウザ VS Code サーバー実装 (openvscode, code-server) | いいえ | - |
11. SSHターミナルアクセス
マシンまたはリポジトリへの SSH ターミナルを開く。対象にはマシン名またはリポジトリ ref を指定でき、リポジトリコンテキスト(DOCKER_HOST、作業ディレクトリ、環境変数)は自動的に設定される。`-c` で単一コマンドを非対話的に実行できる。コンテナのログや単発コマンドの実行には `repo logs` と `repo exec` を使用する。VS Code には `vscode` を使用する
11.1 connect
マシン上、またはリポジトリ内(Docker 設定済み)でシェルを開く
rdc term connect <target> [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
-c, --command <cmd> | インタラクティブシェルの代わりにコマンドを実行する | いいえ | - |
--external | 外部ターミナルウィンドウで起動を強制する | いいえ | - |
--reset-home | リポジトリごとのホームオーバーレイをリセットして初期状態にする | いいえ | - |
12. クイックコマンド(ショートカット)
12.1 run
関数を実行する (短縮形: queue create)
rdc run
12.2 trace
タスクをトレースする (queue trace のショートカット)
rdc trace
12.3 cancel
タスクをキャンセルする (queue cancel のショートカット)
rdc cancel
12.4 retry
失敗したタスクをリトライする (queue retry のショートカット)
rdc retry
13. サブスクリプション管理
ライセンスとサブスクリプショントークンを管理する。login でサインインし、status で確認し、refresh でライセンスを再発行する
13.1 login
WebポータルのAPIトークンで認証
rdc subscription login [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
-t, --token <token> | APIトークン (rdt_...) | いいえ | - |
--server <url> | アカウントサーバーURL | いいえ | - |
13.2 logout
保存されたサブスクリプショントークンを削除する
rdc subscription logout
13.3 status
サブスクリプションと、マシンのライセンス状態を表示する
rdc subscription status [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
-m, --machine <name> | マシン名 | いいえ | - |
13.4 refresh
アカウントサーバーからライセンスを更新する
rdc subscription refresh [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
-m, --machine <name> | マシン名 | いいえ | - |
--repo <ref> | リポジトリ ref: 名前、または 名前:タグ、任意で @machine を付加(例: shop、shop:test) | いいえ | - |
14. CLIアップデート
CLIのアップデートを確認して適用
rdc update [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--force | 最新でも強制的にアップデート | いいえ | - |
--check-only | ダウンロードせずにアップデートの確認のみ | いいえ | - |
--rollback | 以前のバージョンにロールバック | いいえ | - |
--status | 自動更新のステータスと診断情報を表示 | いいえ | - |
--channel <channel> | リリースチャンネルを設定 (stable または edge) | いいえ | - |
15. サードパーティクレジット
rdc に同梱されているサードパーティコンポーネントを表示する: renet が組み込み・配布するバイナリ(CRIU、rsync、rclone)、組み込みの Node.js ランタイム、同梱の npm 依存関係。バージョン、SPDX ライセンス識別子、GPL コンプライアンスに必要な正確なバージョンのソースアーカイブ URL を表示する。--licenses を指定するとリリースビルドに同梱される THIRD_PARTY_LICENSES の全文を表示する。
rdc credits [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--licenses | リリースビルドに同梱される THIRD_PARTY_LICENSES の全文を表示する | いいえ | - |
16. システム診断
CLI環境とrenet統合を診断
rdc doctor
17. ローカル VM 操作
KVM/QEMU/Hyper-V を使ったローカル VM のプロビジョニングと管理(プラットフォームは自動検出)。リモートマシン向けではない — そちらには `machine` を使用する。主なサブコマンド: up(VM 起動)、down(停止)、status(実行中 VM の一覧)、ssh(VM へ接続)、setup(前提条件のインストール)、check(ホストの準備状況を確認)。
17.1 up
VM クラスターをローカルにプロビジョニング
rdc ops up [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--force | すべての VM を強制再起動 | いいえ | - |
--parallel | VM を並列で作成 | いいえ | - |
--basic | 最小構成クラスター (ブリッジ + ワーカー1台) | いいえ | - |
--lite | VM プロビジョニングをスキップ (ステータスのみ) | いいえ | - |
--skip-orchestration | クラスターオーケストレーションをスキップ | いいえ | - |
--backend <backend> | 仮想化バックエンド (kvm|qemu、自動検出) | いいえ | - |
--os <name> | VM オペレーティングシステム (例: ubuntu-24.04, debian-12) | いいえ | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
17.2 down
VM クラスターを破棄
rdc ops down [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--backend <backend> | 仮想化バックエンド (kvm|qemu、自動検出) | いいえ | - |
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
17.3 status
VM クラスターの状態を表示
rdc ops status [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--backend <backend> | 仮想化バックエンド (kvm|qemu、自動検出) | いいえ | - |
17.4 ssh
VM に SSH 接続
rdc ops ssh [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--vm-id <id> | 仮想マシン ID | はい | - |
-c, --command <cmd> | インタラクティブシェルの代わりにコマンドを実行する | いいえ | - |
--backend <backend> | 仮想化バックエンド (kvm|qemu、自動検出) | いいえ | - |
--user <user> | VM 接続用の SSH ユーザー名 | いいえ | - |
17.5 setup
仮想化の前提条件をインストール
rdc ops setup [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
--debug | デバッグ出力を有効化 (ローカルモード) | いいえ | - |
17.6 check
仮想化の前提条件を確認
rdc ops check
18. エグゼキューターサービス
クライアントが自分で SSH 接続する代わりに、このプロセスをエグゼキューターとして実行し、コマンドを実行できるようにします
rdc serve [options]
| フラグ | 説明 | 必須 | デフォルト |
|---|---|---|---|
-p, --port <port> | 待ち受けるポート | いいえ | 8080 |
--host <host> | バインドするアドレス | いいえ | 0.0.0.0 |
--mode <mode> | 配置先: daemon(顧客ホスト)または container | いいえ | daemon |
一般的なエラーメッセージ
問題が発生した場合、CLIは明確なエラーメッセージを提供します:
| エラー | 意味 |
|---|---|
| 認証が必要です。実行してください: rdc subscription login | 最初にログインする必要があります |
| アクティブな設定がありません。次のコマンドで作成してください: rdc config init <name> | アクティブな設定がありません — `rdc config init` で作成してください |
| 権限がありません | アカウントに必要な権限がありません |
| マシン名が必要です。--machine <name> を使用してください | `--machine`でマシンを指定するか、コンテキストのデフォルトを設定してください |
| チーム名が必要です。--team を使用するか、次のコマンドでデフォルトを設定してください: rdc config set team <name> | `--team`でチームを指定するか、コンテキストのデフォルトを設定してください |
| リージョン名が必要です。--region を使用するか、次のコマンドでデフォルトを設定してください: rdc config set region <name> | `--region`でリージョンを指定するか、コンテキストのデフォルトを設定してください |
出力形式
すべてのlist/getコマンドは`--output`を通じて複数の出力形式をサポートしています:
rdc machine list --output json
rdc machine list --output yaml
rdc machine list --output csv
rdc machine list --output table # default
これにより、Rediacc CLIをスクリプト、CI/CDパイプライン、自動化ワークフローに簡単に統合できます。