Documents
Home

13 運用手順

13.1 バックアップ

手動バックアップ

# PostgreSQL ダンプ
pg_dump -U <user> <dbname> > backup_$(date +%Y%m%d).sql

# GitHub へ push
git add backup_*.sql
git commit -m "backup: $(date +%Y-%m-%d)"
git push origin main

13.2 DB マイグレーション

drizzle-orm を使用。環境ごとに対象 DB が異なる。

# PostgreSQL(自宅鯖)
pnpm --filter @robot-bot/db migrate:postgres

# Turso
pnpm --filter @robot-bot/db migrate:turso

# D1
pnpm --filter @robot-bot/db migrate:d1

マイグレーションは各環境に順番に適用すること。


13.3 アプリケーション再起動

# BOT 再起動
cd apps/bot
pnpm restart

# 自宅鯖 API 再起動
cd apps/api
pnpm restart

# WebUI 再起動
cd apps/web
pnpm restart

プロセス管理ツール(PM2 など)を使用している場合はそれに従う。


13.4 ロールバック

DB マイグレーションのロールバック

drizzle-orm のマイグレーションロールバックコマンドを使用。

# ロールバック(1 つ前に戻す)
pnpm --filter @robot-bot/db rollback:postgres
pnpm --filter @robot-bot/db rollback:turso
pnpm --filter @robot-bot/db rollback:d1

アプリケーションのロールバック

# 前バージョンの Git タグに戻す
git checkout <tag>
pnpm install
pnpm build
pnpm restart

13.5 Turso / D1 全量再同期

CF 障害復旧時または手動で再同期が必要な場合。

# PostgreSQL → Turso + D1 全量再同期
pnpm --filter @robot-bot/db sync:all

13.6 メンテナンスポリシー