DigitalBase Docs

環境移行

DigitalBase を別サーバーへ移す手順。対象は PostgreSQL データベース・アップロードファイル・.env の 3 つ。

対象:管理者必要権限:サーバー管理者エディション:Ollama / vLLM
補足

移行元の db backup で作ったファイルを移行先の BACKUP_DIR に置き、db restore で戻しても移せる(バックアップと復元)。下の手順は DB とデータを個別に移す方法。

移すもの

移す対象と方法は次のとおり。

対象中身方法
PostgreSQL DBチャット履歴・RAG 埋め込み(pgvector)・ユーザー・ボット・設定・監査ログpg_dump → psql
データファイル・レイク (Parquet)・カスタム MCP・監査ログの退避(FILES_DIR と、DATA_DIR の下の lake mcp audit-archive。既定はどちらも ~/.local/db の下、deb / rpm はファイルが /opt/digitalbase/files、それ以外が /root/.local/db)tar / rsync
.env設定(DATABASE_URL・モデル・認証・JWT_SECRET 等)コピー
(任意)モデルキャッシュHF_HOME(既定 ~/.cache/huggingface)コピー(省略時は再ダウンロード)
(任意)ライセンスLICENSE_FILE_PATH の license.licコピー(下記注意)

1. 移行元(エクスポート)

サーバーを停止して静止点を作る。

db stop

sudo systemctl stop db でも止められる。

DB をダンプする。pgvector 拡張と全テーブルを含む。

sudo -u postgres pg_dump digitalbase > digitalbase.sql

root で sudo が無い環境では次のコマンドを使う。

su postgres -c "pg_dump digitalbase" > digitalbase.sql

データ(DATA_DIR)をまとめる。無いフォルダは外す。個別に *_DIR を指定していればその場所を使う。

インストーラ版は次のコマンドを使う。

tar czf data.tar.gz -C ~/.local/db files lake mcp audit-archive

deb / rpm 版は root で実行する。ファイルは /opt/digitalbase/files、それ以外は /root/.local/db にあるので、2 つに分けてまとめる。

tar czf data.tar.gz -C /root/.local/db lake mcp audit-archive
tar czf files.tar.gz -C /opt/digitalbase files

.env をコピーする。インストーラ版は次のコマンドを使う。

cp ~/.local/db/.env env.backup

deb / rpm 版の .env は /etc/digitalbase/.env にある。

cp /etc/digitalbase/.env env.backup

2. 転送

作ったファイルを移行先へ送る。

scp digitalbase.sql data.tar.gz env.backup  root@<移行先>:/tmp/

deb / rpm 版は files.tar.gz も送る。

scp digitalbase.sql data.tar.gz files.tar.gz env.backup root@<移行先>:/tmp/

3. 移行先(インポート)

移行先に DigitalBase を先にインストールし、起動せずに空 DB へリストアする。

install 直後の空の digitalbase DB へリストアする。

sudo -u postgres psql digitalbase < /tmp/digitalbase.sql

データを移行先の DATA_DIR へ展開する。置き場所が変わってもレイクはそのまま開ける。インストーラ版は次のコマンドを使う。

tar xzf /tmp/data.tar.gz -C ~/.local/db

deb / rpm 版は root で実行する。ファイルは /opt/digitalbase の下へ展開する。

mkdir -p /root/.local/db
tar xzf /tmp/data.tar.gz -C /root/.local/db
tar xzf /tmp/files.tar.gz -C /opt/digitalbase

.env を置く。下記の「.env の扱い」を見て調整する。インストーラ版は次のコマンドを使う。

cp /tmp/env.backup ~/.local/db/.env

deb / rpm 版は /etc/digitalbase/.env に置く。

cp /tmp/env.backup /etc/digitalbase/.env

起動する。起動時に不足スキーマがあれば自動で migration される。

db start

起動を確認する。{"status":"ok"} が返る。

curl http://localhost:8000/health

注意点

注意

永続版ライセンスはハードウェアに紐付くため、移行先用の再発行が必要か事前に確認する。

  • .env の扱い — JWT_SECRET を引き継げば既存セッションは有効なまま。変えると全員再ログインになる。DATABASE_URL・DATA_DIR・LICENSE_FILE_PATH は移行先に合わせて調整する
  • pgvector — 移行先の PostgreSQL に必要(正規インストールなら導入済み)
  • バージョン — 移行元と移行先の DigitalBase を揃える

移行の検証

次を確認する。

  • curl http://localhost:8000/health が {"status":"ok"}
  • 管理画面でユーザー・ボット・チャット履歴が見える
  • RAG ボットの検索で既存ナレッジがヒットする(pgvector の移行確認)

関連