メインコンテンツまでスキップ

📦 データベースのエクスポートとインポート

サーバー間でOpen WebUIのデータ(チャット履歴や設定など)を移動する場合や、後で使用するためにバックアップを作成する場合、データベースをエクスポートおよびインポートできます。このガイドでは、Open WebUIが内部SQLiteデータベース(PostgreSQLではない)を使用していることを前提とします。

webui.dbファイル(データベースを含む)のエクスポートとインポート方法を以下の手順に従って実施してください。


データベースのエクスポート

現在のOpen WebUIインスタンスからデータベースをエクスポートする方法:

  1. docker cpを使用してデータベースファイルをコピーする:
    webui.dbファイルはコンテナ内のディレクトリ/app/backend/dataにあります。以下のコマンドを実行して、ローカルマシンにコピーします:

    docker cp open-webui:/app/backend/data/webui.db ./webui.db
  2. エクスポートしたファイルを新しいサーバーに転送する:
    FileZillaやその他任意のファイル転送ツールを使用してwebui.dbファイルを新しいサーバーに移動します。

    備考

    ファイル転送には使いやすいFileZillaを推奨します。


データベースのインポート

webui.dbファイルを新しいサーバーに移動した後、次の手順に従います:

  1. 新しいサーバーでOpen WebUIをインストール&実行する:
    Dockerコンテナを使用してOpen WebUIをセットアップして実行します。インストールと起動の手順については🚀 はじめにを参照してください。起動後、インポートを行う前に停止してください。

    docker stop open-webui
  2. docker cpを使用してデータベースファイルをコンテナにコピーする:
    エクスポートしたwebui.dbファイルが現在の作業ディレクトリにあると仮定して、それをコンテナにコピーします:

    docker cp ./webui.db open-webui:/app/backend/data/webui.db
  3. Open WebUIコンテナを起動する:
    インポートしたデータベースを使用してコンテナを再起動します。

    docker start open-webui

新しいサーバーがインポートされたデータベースを使用してOpen WebUIを実行するようになります。


注意事項

  • このエクスポート/インポートプロセスは内部SQLiteデータベース(webui.db)を使用している場合にのみ動作します
  • 外部PostgreSQLデータベースを使用している場合、この方法は適用できません。PostgreSQLの場合、専用のツールや手順を使用してデータベースをバックアップおよび復元する必要があります。

重要性

このアプローチは以下の場合に特に役立ちます:

  • Open WebUIデータを新しいサーバーやマシンに移行する際。
  • 更新や変更の前にデータのバックアップを作成する際。
  • 複数のサーバーで同じセットアップをテストする際。
# エクスポートとインポートのための簡易コマンド一覧
# エクスポート:
docker cp open-webui:/app/backend/data/webui.db ./webui.db

# 新しいサーバーでコンテナを停止:
docker stop open-webui

# インポート:
docker cp ./webui.db open-webui:/app/backend/data/webui.db

# コンテナを開始:
docker start open-webui

これらの手順に従うことで、Open WebUIの移行やバックアッププロセスを簡単に管理できます。使用しているデータベース形式に注意して互換性を確保してください。