Gadget 07:バックアップと復元
Cloudflare OS のバックアップ対象・復元手順・復元できているかの検証方法
バックアップと復元
「いつか壊れても戻せる」ためのバックアップ対象・復元手順・検証方法です。
目的
- 消したら二度と戻らないデータ(
.wrangler/など)を確実に守る - 「復元できること」を事前に検証しておく
前提条件
- データの保存場所の理解(16-storage-persistence)
- ストレージ(NAS:
/share/...、PC: 外付け/クラウド)への書き込み権限
手順
1. バックアップ対象を洗い出す
| 対象 | 場所 | 重要度 |
|---|---|---|
| ローカル永続データ | .wrangler/ |
★★★(消すと全消え) |
| リポジトリ本体 | cloudflare-os/ |
★★(再 clone 可能) |
| 秘密情報 | .dev.vars |
★★(無いと連携不可) |
| 利用設定・メモ | (各自の管理箇所) | ★(内容依存) |
2. バックアップを取る(例:NAS なら自前ボリュームへ)
# 静止のため、一度 run-local を止めるか、スナップショットを取る
pgrep -f "run-local" # 起動プロセス確認
tar czf cfos-backup-$(date +%F).tgz \
cloudflare-os/.wrangler \
cloudflare-os/.dev.vars
TipNAS ではスナップショットが一番楽
QNAP の Snapshot on QTS/QuTS hero で .wrangler を格納するボリュームをスナップショットすれば、 毎回の手動 tar が不要になります。
3. 復元する
# 失敗時:バックアップから戻す
tar xzf cfos-backup-YYYY-MM-DD.tgz
# cloudflare-os/.wrangler と .dev.vars が戻ったことを確認
cd cloudflare-os && pnpm install --frozen-lockfile && pnpm run-local &4. 検証する(最重要)
「復元できるか」を一度は試します。
よくある失敗
| 症状 | 原因 | 対処 |
|---|---|---|
| バックアップを取ったのにデータが消えた | .wrangler が対象外 / 実行中に取った |
必ず「対象」に .wrangler を含め、静止後に取得 |
| 復元後にログインできない | .dev.vars がバックアップに無い |
秘密情報も対象に含める(git 管理外・暗号化推奨) |
| tarball が壊れて復元不可 | 容量不足・途中中断 | tar tzf で開封テスト、検証手順を定期実行 |
| NAS 再起動でデータ消失 | ボリューム未マウント | 復元先を必ず名前付きボリュームに(Gadget 02 参照) |
確認
次に読む
- 対象データの所在 → 16-storage-persistence
- 更新時の復旧 → 20-rollback-procedure
- 自動化 → このサイトの自動化観点は保守運用