Ana içeriğe geç

SQLite depolaması

Libre WebUI varsayılan olarak sohbetleri, iletileri, kullanıcıları, ayarları, belgeleri, parçaları, persona’ları, eklenti kimlik bilgilerini, belleği ve meta verileri tek bir yerel SQLite veritabanında saklar.

Konum

Kaynak sırası:

  1. Ayarlanmışsa DATA_DIR; göreli yol sunucu dizininden çözülür.
  2. Aksi durumda backend/data.

Yapılandırılmamış eski kurulumlarla uyumluluk için, tek kalıcı depo buysa backend/backend/data kullanılır. Durum iki konumda da varsa başlatma açık bir seçim ister; veriler kopyalanmaz veya birleştirilmez.

npm/Homebrew paket başlatıcısı varsayılan olarak ~/.libre-webui kullanır ve göreli DATA_DIR yolunu çağrı dizininden çözer. Docker/Kubernetes mutlak yollar ayarlar.

Dosyanın adı data.sqlite’tır.

DATA_DIR=/var/lib/libre-webui

SQLite’ın sakladıkları

Kullanıcılar ve roller, oturumlar ve iletiler, arayüz tercihleri, belgeler ve parçalar, persona/bellek/mutasyonlar, eklenti kimlik bilgileri ve yönlendirme/kimlik doğrulama bağları, değişkenler, etkinleştirmeler, onaylar, model katalogları, sistem ayarları; ayrıca Work sahipliği, rotalar, çalışmalar, iletiler, araç etkinliği, durum ve Docker ID’leri. Hassas değerler uygulama katmanında şifrelenir.

Work verileri ayrıdır

Work konuşması ve meta verileri SQLite’tadır; dosyalar /workspace konumundaki ayrı, adlandırılmış Docker biriminde bulunur. Kapsayıcı değiştirilebilir, birim kalıcıdır.

Birimler olmadan alınan veritabanı yedeği eksiktir. ai.libre-webui.managed=true etiketi ve görev ID’si bulunan birimleri de yedekleyin.

Görevi silmek kayıtları ve birimi kalıcı olarak siler. Çalışmayı iptal etmek, önizlemeyi durdurmak veya sunucuyu yeniden başlatmak dosyaları silmez.

JSON uyumluluğu

Eski kurulumlar bazı veriler için JSON kullanıyordu; ana yol artık hizmet/model katmanıyla SQLite’tır. Yükseltmeden önce tüm dizini yedekleyin.

.status.json içindeki etkinleştirme, yalnızca tam yerleşik tanımlar için kullanıcı satırlarına bir kez taşınır. Özel ve gölge tanımlar yeniden içe aktarılana kadar karantinada kalır; onay, eski etkinleştirmeleri geri getirmez. Yeni hesaplar etkin eklenti olmadan başlar.

Yedekleme

Sunucuyu durdurun:

cp -R backend/data backend/data.backup
cp -R "$DATA_DIR" "$DATA_DIR.backup"

Work için yönetilen tüm birimleri de yedekleyin. Veritabanı, anahtar ve birimler aynı ana ait olmalıdır.

Geri yükleme

Sunucuyu durdurun, dizini değiştirin ve yeniden başlatın. Aynı ENCRYPTION_KEY değerini koruyun.

Work için birimleri başlatmadan önce tam adlarıyla geri yükleyin. Libre kapsayıcıyı yeniden oluşturur, ancak geçmişten eksik dosyaları üretemez.

İşletim notları

SQLite WAL kullanır. Dizin yazılabilir olmalıdır. Docker/Kubernetes içindeki DATA_DIR kalıcı olmalıdır. ENCRYPTION_KEY değerini yedekleyin. Work birimlerini ayrıca hesaba katın.

İlgili belgeler