sqlite_data(DBおよび認証情報暗号文)および vault_data(Vaultマスターキー)の2つのボリュームに永続化データが保持されています
DOCUMENTS / MAINTENANCE
Console Hubのデータをバックアップ・復元する
Console Hubの永続化データ構造と、事故や環境移行に備えた安全なバックアップ・復元手順です
01 / DATA STRUCTURE
保護が必要な永続化データ
Console Hubは標準Docker Compose構成(docker-compose.prod.yml)において、2つのNamed Volume(sqlite_data および vault_data。プロジェクト名付与時: consolehub_sqlite_data, consolehub_vault_data)へ永続化データを分割格納します。両ボリュームを保護することで、全設定・接続情報・暗号化鍵を復元可能です
sqlite_data(/var/lib/consolehub/data): SQLiteデータベース (consolehub.db)。ユーザーアカウント、ホスト登録情報、アクセス権限、ログ・操作履歴、および暗号化された認証情報(パスワード・秘密鍵・RDP/VNC認証情報等の暗号文)を保持vault_data(/var/lib/consolehub/vault): Vaultマスターキー・暗号化鍵。sqlite_dataに保存された認証情報暗号文を復号するためのマスターキーを保持(※一方のボリュームが欠けるとデータ復元または鍵復号が行えません)
02
PROCEDURE
推奨バックアップ手順
データベースの整合性を保証するため、コンテナを安全に停止した状態でボリュームアーカイブを取得することを推奨します
データベースとVaultの整合性を保つため、バックアップ実行時はコンテナを安全に停止します(docker compose -f docker-compose.prod.yml stop)
docker runコマンド等を用いて sqlite_data および vault_data ボリュームをまとめて圧縮アーカイブ(tar.gz)として安全なストレージへ保存します
空の新規ボリュームへ展開し、スナップショット取得時と互換性のあるイメージバージョンで起動後、ログイン・接続設定・鍵復号が正常に行えるか検証します
03
COMMAND EXAMPLES
コマンド実行例と注意点
Docker Compose環境でのバックアップおよび復元のコマンド例です
# 1. コンテナを安全に停止 (静止点の確保)
docker compose -f docker-compose.prod.yml stop
# 2. 両ボリューム (sqlite_data, vault_data) を1つのアーカイブに圧縮保存
docker run --rm \
-v consolehub_sqlite_data:/data \
-v consolehub_vault_data:/vault \
-v $(pwd):/backup \
alpine tar czf /backup/consolehub-backup-$(date +%Y%m%d).tar.gz -C / data vault
# 3. コンテナの再起動
docker compose -f docker-compose.prod.yml start※既存ボリュームへの上書き解凍は、WAL/ジャーナルログや不要ファイルの残留によりDB不整合を引き起こすため不可です。必ず空のボリュームを準備してください
# 1. コンテナ完全停止と既存ボリュームの削除 (空ボリュームの確保)
docker compose -f docker-compose.prod.yml down -v
docker volume create consolehub_sqlite_data
docker volume create consolehub_vault_data
# 2. バックアップアーカイブから空のボリュームへ展開
docker run --rm \
-v consolehub_sqlite_data:/data \
-v consolehub_vault_data:/vault \
-v $(pwd):/backup \
alpine sh -c "rm -rf /data/* /vault/* && tar xzf /backup/consolehub-backup-YYYYMMDD.tar.gz -C /"
# 3. バックアップ時と互換性のあるイメージバージョンで起動し、ヘルスチェック待機
docker compose -f docker-compose.prod.yml up -d --waitMAINTENANCE
アップグレード手順を見る
バックアップ完了後、最新バージョンへの安全なアップグレード手順をご確認ください